使用Python 3打印时出现语法错误

时间:2009-05-05 21:19:20

标签: python python-3.x

为什么在Python 3中打印字符串时会收到语法错误?

>>> print "hello World"
  File "<stdin>", line 1
    print "hello World"
                      ^
SyntaxError: invalid syntax

3 个答案:

答案 0 :(得分:328)

在Python 3中,print became a function。这意味着您需要包括现在如下所述的括号:

print("Hello World")

答案 1 :(得分:48)

看起来你正在使用Python 3.0,其中print has turned into a callable function而不是声明。

print('Hello world!')

答案 2 :(得分:28)

因为在Python 3中,print statement已替换为print() function,使用关键字参数替换旧print语句的大部分特殊语法。所以你必须把它写成

print("Hello World")

但是如果你在一个程序中写这个并且某个使用Python 2.x试图运行它们,它们将会出错。为避免这种情况,最好导入打印功能

from __future__ import print_function

现在您的代码适用于2.x和&amp; 3.X

查看以下示例以熟悉print()函数。

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)!

来源:What’s New In Python 3.0?