关于python:使用“print”时语法无效?

Invalid syntax when using “print”?

本问题已经有最佳答案,请猛点这里访问。

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

1
print 2 ** 100

这给出SyntaxError: invalid syntax

指着2。

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


那是因为在Python 3中,他们用print函数替换了print语句。

语法现在或多或少与以前相同,但它需要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中更改了print。在2中它是一个语句,现在它是一个函数并需要括号。

这是Python 3.0的文档。


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

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