Python 这端怎么了?

Python 这端怎么了?,python,input,delay,Python,Input,Delay,我正在阅读一个关于定义函数的教程,其中有一个创建新行的示例,您必须编写的代码如下: def new_line(): print def three_lines(): new_line() new_line() new_line() def nine_lines(): three_lines() three_lines() three_lines() print "hello world" print nine_lines() pr

我正在阅读一个关于定义函数的教程,其中有一个创建新行的示例,您必须编写的代码如下:

def new_line():
    print

def three_lines():
    new_line()
    new_line()
    new_line()

def nine_lines():
    three_lines()
    three_lines()
    three_lines()

print "hello world"

print nine_lines()

print "goodbye"
有人能解释为什么在“再见”之前包含“无”吗

print nine_lines()
您正在打印调用
nine_line()
函数的结果。由于该函数没有显式返回值(使用
return
语句,如果您还没有看到,很快就会看到),因此Python返回特殊值
None

要解决此问题,请将该行更改为simply

nine_lines()
您正在打印调用
nine_line()
函数的结果。由于该函数没有显式返回值(使用
return
语句,如果您还没有看到,很快就会看到),因此Python返回特殊值
None

要解决此问题,请将该行更改为simply

nine_lines()
nine_line()
默认情况下将不返回任何值,因为您没有指定返回值

只是使用

nine_lines()
应该为您提供所需的输出,或者您可以使用

print "\n" * 8
编辑:我把9改成了8。我忘了打印还添加了一个新行字符。感谢Sven指出这一点。

nine_line()
默认情况下将不返回任何内容,因为您没有指定返回值

只是使用

nine_lines()
应该为您提供所需的输出,或者您可以使用

print "\n" * 8

编辑:我把9改成了8。我忘了打印还添加了一个新行字符。感谢Sven指出这一点。

当您运行函数
nine_line()
时,它不返回任何内容,这意味着它返回
None
。因为您已经打印了返回值,所以在控制台中看不到任何值。

当您运行函数
nine_line()
时,它不返回任何值,这意味着它返回
None
。因为您已经打印了返回值,所以在控制台中看不到任何值。

Ah好的,所以它将返回九个空格,然后打印一个,因为九行不包含字符?不,它不返回九个空行,而是打印它们。然后它返回
None
(因为如果不返回任何其他内容,所有函数都返回
None
)。然后打印。啊,好的,它会返回九个空格,然后不打印,因为九行不包含字符?不,它不会返回九行空白,它会打印它们。然后它返回
None
(因为如果不返回任何其他内容,所有函数都返回
None
)。这是然后打印出来的。我甚至不知道为什么在教程中没有打印的时候我会在那里放一个“打印”哈哈,谢谢你的帮助。我甚至不知道为什么在教程中没有打印的时候我会在那里放一个“打印”哈哈,谢谢你的帮助。最后一行将打印10个换行符。:)如果您想提高可读性,通常会有
print'\n'*9,
最后一行将打印10个换行符。:)如果您想要更高的可读性,通常会有
print'\n'*9,