我是Python和编程的绝对初学者,我刚刚接触过函数。
我在下面定义了两个简单的函数:
def output1():
print "Hello, world!"
def output2():
print "Hello, there!"
output1()
output2()
将上面的内容保存到一个名为function.py的脚本后,我使用windows power shell运行脚本,并按照您的预期打印以下内容:
Hello, world!
Hello, there!
然而,当我将脚本修改为:
def output1():
print "Hello, world!"
def output2():
print "Hello, there!"
print output1()
print output2()
打印:
Hello, world!
None
Hello, there!
None
出于好奇,为什么当我用output1和output2作为print前缀时呢?
答案 0 :(得分:5)
一个函数可以有一个返回值:你调用该函数并将它返回到调用它的位置。
默认情况下,函数在Python中返回None
。
您现在还打印了output1
和output2
的返回值。
您可以阅读有关此Python语言教程的in this section的更多信息。
答案 1 :(得分:2)
它是这样的,因为:
print output1()
表示您要打印函数的RESULT(即返回值)。
因为你的函数没有返回,默认情况下它是None。
def output1():
print "Hello, world!"
def output2():
print "Hello, there!"
return "Something"
print output1()
print output2()
会导致:
Hello, world!
None
Hello, there!
Something