2016-11-28 13 views
0

私は、変数を初期化し、ちょうど例えば、それは価値が印刷されます対話モードでの「印刷」せずに変数の名前を与えるとPythonの解釈の違い

>>>a=10 
>>>a 
10 
>>> 

しかし、もし私は、スクリプトでこれを行いません、どちらも値が印刷されますも、エラーが生成され、私はこのスクリプトを実行すると、空白行が印刷されます

a=10 
a 

例えば、スクリプトexample.pyで以下のコードを考慮していません値。対話モードとスクリプトモードの出力に違いがあるのはなぜですか?

+0

スクリプトに 'a'の値を表示するには' print(a) 'が必要です。インタプリタは、使いやすいように自動的に印刷します。 – danielunderwood

答えて

1

これは便利な機能です。 「このことが何であるか教えてください」は、インタラクティブモードではプログラムよりもはるかに重要な操作であり、常にprint(repr(...))の書き込みを続けるのは疲れるでしょう。プログラムでは、すべての式文の値を出力することはしばしば面倒であり、手動で出力を抑止する必要があるため、明示的に出力する必要があります。

1

Pythonには、通常モードと対話モードの2つの基本モードがあります。通常モードは、スクリプト化された.pyファイルがPythonインタプリタで実行されるモードです。インタラクティブモードはコマンドラインシェルであり、以前にフィードされたステートメントをアクティブメモリで実行しながら、各ステートメントの即時フィードバックを提供します。新しい行がインタプリタに供給されると、フィードされたプログラムは部分的にも全体的にも評価されます。