Python - 为什么我会收到此错误?

时间:2015-11-26 09:31:54

标签: python

我是一个蟒蛇新手。我想知道为什么我会收到这个错误:

File "python-challenge-1.py", line 12
    print original.translate(table)
             ^

SyntaxError:语法无效

以下是完整代码:

import string

original = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc " \
    "dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq " \
    "rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu " \
    "ynnjw ml rfc spj."

table = string.maketrans(
"abcdefghijklmnopqrstuvwxyz", "cdefghijklmnopqrstuvwxyzab"
)

print original.translate(table)

2 个答案:

答案 0 :(得分:5)

print()是Python 3中的一个函数,但print是Python 2中的关键字。有关详细信息,请查看PEP 3105。另外here是一个关于SO的好问题。

您应该尝试将其更改为:

print(original.translate(table))

答案 1 :(得分:1)

正如@JoshRumbut指出的那样,print()实际上是一个函数。

Python2 中,您可以编写print 12,但这已在 Python3 中放弃,因此您现在必须编写{ {1}}。

幸运的是, Python2 也了解功能版本,所以一般情况下你最好使用这个版本。