Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 1, 2020 10:51:02

iknski
Зарегистрирован: 2020-07-24
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

None

День добрый.
Не пойму откуда берется None в консоли.
Код такой:

 input_wrong = (f'********************\n'
                f'Внимание!!!\n'
                f'Ошибка ввода.\n'
                f'Введите 1 или 2\n'
                f'********************')
print(red(input_wrong))
Есть такая функция окрашивающая текст в цвет:
Функция реализована отдельным модулем, который я импортирую.
 def red(text):
    print('\033[31m{}\033[0m'.format(text))
В итоге получаю в консоли:
 ********************
Внимание!!!
Ошибка ввода.
Введите 1 или 2
********************
None

Офлайн

#2 Авг. 1, 2020 11:04:40

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

None

None берется из печати print(red(input_wrong)), так как функция red - возвращает None. Сделай return ‘результат’

Офлайн

#3 Авг. 1, 2020 11:24:35

iknski
Зарегистрирован: 2020-07-24
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

None

Romissevd
и
Сделал так и все нормально заработало, спасибо.
Только не понял почему принт возвращал None.
 def red(text):
    value = '\033[31m{}\033[0m'.format(text)
    return value

Офлайн

#4 Авг. 1, 2020 11:48:27

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

Офлайн

#5 Авг. 3, 2020 16:59:11

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

None

iknski
Только не понял почему принт возвращал None.
принт ничего не возвращает, принт выводит на экран аргументы которые находятся в скобках. в вашем случае там находиться вызов функции и принт в функции выводит результат а функция по умолчанию возвращает None вот глобальный принт и выводит это ничего. а во втором случае вы уже прописали в функции вернуть результат вот вам глобальный принт и вывел результат

Отредактировано marvellik (Авг. 3, 2020 17:00:10)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version