python -i の魔力

2013/06/06 00:10

※ 商品のリンクをクリックして何かを購入すると私に少額の報酬が入ることがあります【広告表示】

パーフェクトPythonの読書会が始まったようです。

パーフェクトPython読書会 01 #perfectpython

ありがたいですね。

さて、職場でPythonのインタラクティブシェルを使っていたときに -i の魔力を別言語の人に自慢したいたところ、PyPIから最近メールを受け取った人も知らなかったりしたので書いておきましょう。

パーフェクトPythonを謎の方法で入手した同僚も知らなかった(つまり読んでない)ので、きっと有用でしょう。

Pythonは、pythonコマンドを引数なしで実行するとインタラクティブシェルモードに入ります。引数にスクリプトを渡すと、スクリプトを実行して終了します。

botoのラッパ関数を詰め込んだモジュールを作って、インタラクティブモードに入る度にimportしたりするの、面倒ですよね?

そこで -i です。

$ python -i script.py

こうすることで、スクリプトファイルを実行したコンテキストでインタラクティブシェルモードに入ります。 ipython も同じオプションが使えるので、 python コマンドのかわりにipythonを使えば script コンテキストの名前をタブ連打でリストできて便利です。

簡単に言えば、スクリプトファイル(上記の場合 script.py )で import したり定義したりしたモジュールや関数等がインタラクティブシェルを開いた時点で読み込まれているということです。

アーベンリ

2013/06/10 00:46 by 香月(長崎市)
お久しぶりです。
Python地道にやっています。
聞きたいのですが、エディターは何を使っていますか
自分はアメリカからDLしたのですが、
Wing 101 と言うPython専用のIDEです。
全て英語表示です。
では宜しくお願いします。
2013/06/14 17:42 by makoto
通常は sublimetext を使っています。
構造をきちんと把握したい場合には気合いを入れて pycharm を起動してます。HTMLやJavaScriptの構造も扱えるので便利です :-)

Prev Entry

Next Entry