Почему это выводит 'None' на выходе?
Я определил функцию следующим образом:
def lyrics(): print "The very first line"print lyrics()
Однако почему выходные данные возвращают None:
None
The very first lineNone
Переведено автоматически
Ответ 1
Потому что есть два оператора печати. Первый - внутри функции, а второй - вне функции. Когда функция ничего не возвращает, она возвращает неявно None.
Используйте return оператор в конце функции, чтобы вернуть значение.
return
например:
ВозвратNone.
>>> def test1():... print "In function."... >>> a = test1()In function.>>> print aNone>>> >>> print test1()In function.None>>> >>> test1()In function.>>>
Используйте оператор return
>>> def test():... return "ACV"... >>> print test()ACV>>> >>> a = test()>>> print aACV>>>
Ответ 2
Из-за функции double print . Я предлагаю вам использовать return вместо print внутри определения функции.
print
def lyrics(): return "The very first line"print(lyrics())
или
def lyrics(): print("The very first line")lyrics()