n = 1
p = 4
print n += p
私に与えます:
File "p7.py", line 17
print n += p
SyntaxError: invalid syntax
この問題はどのように修正できますか?
n = 1
p = 4
print n += p
私に与えます:
File "p7.py", line 17
print n += p
SyntaxError: invalid syntax
この問題はどのように修正できますか?
n += p
は Python のステートメントであり、印刷可能な値を返す式ではありません。これは、すべてが式である Ruby などの他のいくつかの言語とは異なります。
あなたがする必要があります
n += p
print n
「拡張」代入(x op= expr
のショートカットとしてx = x op expr
)を含む代入は、式ではなくステートメントです。したがって、値にはなりません。何も起こらないものの結果を印刷することはできませんが、Pythonに「評価しn += p
てから結果を印刷する」ように指示しているのです。
新しいものを変更n
して印刷する場合n
は、2行で行います。どちらかを変更せずn
に合計を出力するだけの場合は、の代わりにを使用します。p
+
+=
別の行に分割する必要があります。
n = 1
p = 4
n += p
print n
n += p
に等しいn = n + p
です。これは独自の声明であり、印刷することはできません。あなたはおそらく意味しprint n + p
た。
編集:
それを理解した... やや。printステートメントを取り出すと機能します。ここでのルールがわかりません。なぜ印刷で壊れるのか、でも探し続けます
Python に関する本を入手して、そこから学ぶことを真剣に提案します。あなたは明らかに(侮辱を意味するのではなく、あなたに知らせるだけです)あなたが何をしているのか分かりません.
+=
は声明です。単独で行に配置します。
一般的に+=
合法的なPythonですが、現時点では構文的に許可されていないため、次のことを試してください。
n = 1
p = 4
n += p
print n