Python 运算符 (+=) 和 SyntaxError

Python Operator (+=) and SyntaxError

好的,我做错了什么?

x = 1

print x += 1

错误:

print x += 1
         ^
SyntaxError: invalid syntax

或者,+= 是否不再适用于 Python 2.7?我发誓我过去用过它。

x += 1 是 Python 中的 augmented assignment statement

您不能在 print 语句中使用 statements,这就是出现语法错误的原因。您只能在此处使用 Expressions

你可以做到 -

x = 1
x += 1
print x

我建议从逻辑上将您要尝试做的事情分开。这将使代码更清晰,而且通常情况下,代码的行为就像您真正想要的那样。如果你想在打印之前增加 x,请执行:

x = 1
x += 1
print(x)
>>> 2  # with x == 2

如果你想在递增之前打印 x:

x = 1
print(x)
x += 1
>>> 1  # with x == 2

希望对您有所帮助。