Python Tips:IPython の起動時に特定の処理を走らせたい

IPython で起動時に特定の処理を走らせる方法をご紹介します。

IPython で起動時の処理を設定するには「プロファイル」というものを利用する形となります( IPython 1.1 の場合)。

ちなみに、 IPython の 1.1 ではプロファイルを利用する形となっていますが、以前のバージョンでは .ipythonrc を使うなどその他の方法が採用されていたようです。

以下、具体的なやり方を見ていきます。対象となる IPython のバージョンは 1.1 です。

01 プロファイルの作成

まずは IPython の「プロファイル」というものを作成します。

$ ipython profile create some_profile_name

someprofilename のところを省略すれば、ホームディレクトリ以下に .ipython/profile_default ディレクトリが作られ、その中にデフォルトの設定ファイルが作成されます。今回はそこを省略したものとして以下進めていきます。

.ipython/profiledefault の中をのぞくと ipythonconfig.py というファイルが入っています。これが IPython 起動時の設定を書き込むためのものです。

02 設定ファイルの編集

ipython_config.py の中にはプロファイルを作成時にすでにひな形が書き込まれているので、その中に適宜設定を追加します。

たとえば、特定のライブラリを読み込みたいなら、 ipython_config.py の中の次の一文を探します。

c = get_config()

これを以下の内容に変更します。

c = get_config()

c.InteractiveShellApp.exec_lines = [
    'import numpy',
    'import scipy'
]

こうすることで、 numpy と scipy が IPython の起動時に読み込まれる形となります。

特定の読み込みパスを追加しておきたい場合は次のようにします。

c.InteractiveShellApp.exec_lines = [
    'import sys',
    'sys.path.append(some_path_you_want_to_add)'
]

IPython を立ち上げたらほぼ毎回使うような使用頻度が高いライブラリやパスなんかはここで読み込んでおくとようにすると便利です。

以上です。

ライブラリの読み込み以外にもさまざまな設定ができるようになっているので、詳しくは公式ドキュメントをご参照ください。

参考