def white():
print
print ("First line")
white()
print ("Second line")
这是我的第一个脚本之一。当我按下“F5”键时,结果如下:
First line
Second line
错误在哪里?
答案 0 :(得分:8)
您正在使用其中print
是函数的Python 3。在Python 2中print
是一个语句,您的代码将按预期运行。
这一行:
print
不会调用该函数。它只是查找名称print
。这并不会导致输出设备上出现任何问题。
你可能想要编写这样的实际调用函数的东西:
def white():
print()
print ("First line")
white()
print ("Second line")
<强>输出强>
First line Second line
答案 1 :(得分:3)
在Python 2中white()
打印一个新行,而在Python 3中则不打印。
$ python2 /tmp/white.py
First line
Second line
$ python3 /tmp/white.py
First line
Second line
{2}和Python 3之间print
的行为发生了变化。在Python 2中,print
是一个关键字,只写print
就会打印一个新行。
在Python 3 print
是一个函数,需要括号。如果你只写print
那么你有一个声明只是检索print
函数但没有调用它,所以没有任何反应。要获得一个空行,您需要调用:
def white():
print()
print ("First line")
white()
print ("Second line")
答案 2 :(得分:1)
如果你使用的是python 3,那么'print'是一个函数,而不是一个语句。要打印一行,您需要实际调用它。
def white():
print()
答案 3 :(得分:0)
如果您希望white()
方法打印空格,则需要第二行的print语句看起来更像这样:print(" ")
。对没有参数的print
的调用不会做任何事情。