为什么在输出中打印 'None'?
Why is this printing 'None' in the output?
我定义了一个函数如下:
def lyrics():
print "The very first line"
print lyrics()
但是为什么输出 return None
:
The very first line
None
因为有两个打印语句。第一个是内部函数,第二个是外部函数。当一个函数没有 return 任何东西时,它隐含地 returns None
.
在函数末尾使用 return
语句到 return 值。
例如:
Return None
.
>>> def test1():
... print "In function."
...
>>> a = test1()
In function.
>>> print a
None
>>>
>>> print test1()
In function.
None
>>>
>>> test1()
In function.
>>>
使用return语句
>>> def test():
... return "ACV"
...
>>> print test()
ACV
>>>
>>> a = test()
>>> print a
ACV
>>>
由于双重打印功能。我建议您在函数定义中使用 return
而不是 print
。
def lyrics():
return "The very first line"
print(lyrics())
或
def lyrics():
print("The very first line")
lyrics()
我定义了一个函数如下:
def lyrics():
print "The very first line"
print lyrics()
但是为什么输出 return None
:
The very first line
None
因为有两个打印语句。第一个是内部函数,第二个是外部函数。当一个函数没有 return 任何东西时,它隐含地 returns None
.
在函数末尾使用 return
语句到 return 值。
例如:
Return None
.
>>> def test1():
... print "In function."
...
>>> a = test1()
In function.
>>> print a
None
>>>
>>> print test1()
In function.
None
>>>
>>> test1()
In function.
>>>
使用return语句
>>> def test():
... return "ACV"
...
>>> print test()
ACV
>>>
>>> a = test()
>>> print a
ACV
>>>
由于双重打印功能。我建议您在函数定义中使用 return
而不是 print
。
def lyrics():
return "The very first line"
print(lyrics())
或
def lyrics():
print("The very first line")
lyrics()