Invalid syntax when using “print”?
本问题已经有最佳答案,请猛点这里访问。
我正在学习Python,甚至不能编写第一个例子:
1 | print 2 ** 100 |
这给出
指着2。
为什么是这样? 我正在使用3.1版
那是因为在Python 3中,他们用
语法现在或多或少与以前相同,但它需要parens:
来自"python 3中的新功能"文档:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Old: print"The answer is", 2*2 New: print("The answer is", 2*2) Old: print x, # Trailing comma suppresses newline New: print(x, end="") # Appends a space instead of a newline Old: print # Prints a newline New: print() # You must call the function! Old: print >>sys.stderr,"fatal error" New: print("fatal error", file=sys.stderr) Old: print (x, y) # prints repr((x, y)) New: print((x, y)) # Not the same as print(x, y)! |
你需要括号:
1 | print(2**100) |
他们在Python 3中更改了
这是Python 3.0的文档。
在新的3.x版本而不是旧的2.x版本中更改了语法:
例如在python 2.x中你可以写:
打印"嗨新世界"
但在新的3.x版本中,您需要使用新语法并将其写为:
打印("嗨新世界")
检查文档:
http://docs.python.org/3.3/library/functions.html?highlight=print#print