使用“print”时语法无效?

时间:2009-06-02 00:51:52

标签: python

我正在学习Python,甚至无法编写第一个例子:

print 2 ** 100

这会给SyntaxError: invalid syntax

指着2。

这是为什么?我正在使用3.1版

4 个答案:

答案 0 :(得分:221)

这是因为在Python 3中,他们已使用print 函数替换了print 语句

语法现在或多或少与以前相同,但它需要parens:

来自“what's new in python 3”文档:

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 :(得分:14)

你需要括号:

print(2**100)

答案 2 :(得分:8)

他们在Python 3中更改了print。在2中它是一个声明,现在它是一个函数并需要括号。

这是the docs from Python 3.0

答案 3 :(得分:2)

在新的3.x版本而不是旧的2.x版本中更改了语法: 例如在python 2.x中你可以写: 打印“嗨新世界” 但在新的3.x版本中,您需要使用新语法并将其写为: 打印(“嗨新世界”)

检查文档: http://docs.python.org/3.3/library/functions.html?highlight=print#print