Pythonの対話モード

Pythonには対話モード(インタラクティブモード)という機能があります。対話モードはインタプリタ上で、そのままPythonプログラムを入力・実行できます。Pythonスクリプトのファイルを作らずともその場でプログラムの確認ができる便利な機能です。 PyQで対話モードを使いたい場合は、このページの下にある「PyQのターミナルからの対話モード」を参照してください。

対話モードの起動

手元のターミナル等でpythonコマンドを実行すると対話モードになります。最初にPythonのバージョンや動かしてる環境の情報が表示されます。その後は「>>>」の記号が表示され入力待ちの状態になります。

$ python
Python 3.6.1 (default, Apr  4 2017, 09:40:21)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

対話モードを終了したい場合は「Ctrl+D」を押すか「exit()」という関数を実行すると終了できます。

>>> exit()

Pythonコードの実行

対話モードでは直接Pythonコードを入力すると即座に実行され結果が確認できます。

>>> greeting = 'Hello World!'
>>> greeting
'Hello World!'
>>> first_number = 10
>>> second_number = 5
>>> first_number + second_number
15

if文などのインデントが必要なコードも書くことができます。

>>> greeting = 'Hello World!'
>>> if greeting == 'Hello World!':
...    print('OK')
...
OK

インタラクティブモードは最後に実行した結果を特殊な変数「_」に格納しているので、あとで結果を確認したい場合に覚えておくと良いでしょう。

>>> one = 1
>>> two = 2
>>> one + two
3
>>> _
3 # 最後に実行した one + two の実行結果3が表示

対話モードのカスタマイズ

環境変数PYTHONSTARTUPに特定のPythonスクリプトのパスを設定することで、対話モードが起動する時にそのスクリプトを最初に実行してくれます。例えば特定のモジュールを予めインポートしておくなど自分の必要に応じて初期化することに利用できます。

例えばosモジュールをインポートするだけのstartup.pyという初期化用のスクリプトを用意します。

# startup.py ---
import os

このスクリプトのパスを環境変数PYTHONSTARTUPにセットします。

$ export PYTHONSTARTUP=/path/to/startup.py

この状態で対話モードを起動すると、最初からosモジュールがインポートされた状態で始めることができます。

$ python
Python 3.6.1 (default, Apr  4 2017, 09:40:21)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> os.getcwd()
'/path/to/current/'

PyQのターミナルからの対話モード

Pythonの新しい文法を学び、試すために、対話モードという機能を利用できます。 中央上部にあるターミナル表示をクリックし、pythonと入力し、Enterキーを押してください。

~/work$ python [Enter]
>>> x =[1,2,3]
>>> x
[1, 2, 3]
>>> x[1]
2

値を指定し、Enterを押すとその変数などに代入されている値を参照できます。 対話モードを利用すると気軽に「こう書くと、どうなるのかな?」を試せます。

さらに詳しく学ぶには、公式ドキュメントの3. 形式ばらない Python の紹介を参照ください。 各環境でのPythonの動作については、こちらを参照ください。