TL; DR:式は値と演算子の組み合わせであり、常に1つの値まで評価します。ステートメントは、他のすべての命令です。いくつかの文は式を含んでいます。
発現はがとが常に単一の値まで評価値と演算子を組み合わせたことの指示です。例えば
、これは式である:
>>> 2 + 2
2Sが整数値であり、+は、数学的演算子です。表現として
>>> 4
私が言うとき、それは単一の値4.
まで評価されます。この式は技術的には、これも表現され、単一の整数値に4
をダウン評価します値や演算子は、これは数学の問題に限定されない:
>>> 'You will be ' + str(int(myAge) + 1) + ' next year.'
myAge
変数は内部の値を評価します。関数呼び出しint('5')
は、関数の戻り値、5
を評価します。これらの文字列のすべての値は、+
演算子(この場合は文字列連結演算子)と組み合わされています。この場合、文字列値まで評価されないPythonの命令である声明、と'You will be 6 next year.'
コントラストこれを:どんなに表現がどのように大きな、それは単一値まで評価されていません値。 Pythonの文は、式以外のものです。ここで代入文です:
>>> spam = 2 + 2
はここにif文です:
>>> if spam == 4:
は、ここで無限ループのためのwhile文です:これらのステートメントの両方が表現が含まれていることを
>>> while True:
注意(True
でも、単一値True
まで評価されます)。しかし、すべてのステートメントで式を使用するわけではありません。
>>> break
関連(しかし**ない**正確な複製):ここでbreak文がだ[式と文との違いは何ですか?](http://stackoverflow.com/questions/4728073/ python-what-is-the-difference-of-expression-and-a-statement) –