3
n = 1
p = 4
print n += p

私に与えます:

File "p7.py", line 17

print n += p

SyntaxError: invalid syntax

この問題はどのように修正できますか?

4

6 に答える 6

24

n += pは Python のステートメントであり、印刷可能な値を返す式ではありません。これは、すべてが式である Ruby などの他のいくつかの言語とは異なります。

あなたがする必要があります

n += p
print n
于 2011-04-18T14:25:25.613 に答える
7

「拡張」代入(x op= exprのショートカットとしてx = x op expr)を含む代入は、式ではなくステートメントです。したがって、値にはなりません。何も起こらないものの結果を印刷することはできませんが、Pythonに「評価しn += pてから結果を印刷する」ように指示しているのです。

新しいものを変更nして印刷する場合nは、2行で行います。どちらかを変更せずnに合計を出力するだけの場合は、の代わりにを使用します。p++=

于 2011-04-18T14:26:43.423 に答える
5

別の行に分割する必要があります。

n = 1
p = 4
n += p
print n
于 2011-04-18T14:25:21.930 に答える
4

n += pに等しいn = n + pです。これは独自の声明であり、印刷することはできません。あなたはおそらく意味しprint n + pた。

編集

それを理解した... やや。printステートメントを取り出すと機能します。ここでのルールがわかりません。なぜ印刷で壊れるのか、でも探し続けます

Python に関する本を入手して、そこから学ぶことを真剣に提案しますあなたは明らかに(侮辱を意味するのではなく、あなたに知らせるだけです)あなたが何をしているのか分かりません.

于 2011-04-18T14:25:12.257 に答える
1

+=は声明です。単独で行に配置します。

于 2011-04-18T14:24:59.157 に答える
0

一般的に+=合法的なPythonですが、現時点では構文的に許可されていないため、次のことを試してください。

n = 1
p = 4
n += p
print n
于 2011-04-18T14:25:40.427 に答える