IPythonとは
IPythonは、自動補完、コマンド履歴、インラインドキュメント、マジックコマンドなどの豊富な機能を備えた強力な対話型Pythonシェルです。Jupyter Notebookの基盤でもあり、データ分析、科学計算、教育分野で広く利用されています。
インストールと起動
IPythonがインストールされていない場合は、以下のコマンドでインストールできます。
pip install ipython
インストール後、コマンドラインで以下のコマンドを実行して起動します。
ipython
主要な機能とテクニック
1. 自動補完とドキュメント参照
IPythonは強力な自動補完機能を提供します。`Tab`キーを押すことで、変数名、関数名、ファイル名などを補完できます。
import numpy as np_lib
np_lib.array([1, 2, 3]).mean<Tb>
また、関数名の後に`?`を付けることで、その関数のドキュメント文字列を確認できます。
np_lib.mean?
さらに、`??`を付けることで、ソースコードまで表示することも可能です。
np_lib.mean??
2. 履歴とシステムコマンド
IPythonは入力したすべてのコマンドを記録し、上下の矢印キーで履歴を閲覧できます。
また、コマンドの先頭に`!`を付けると、システムコマンドを直接実行できます。
!pwd
!ls -la
3. マジックコマンド
IPythonには、`%`または`%%`で始まる多くのマジックコマンドが用意されています。これらは様々なタスクを実行するために使用されます。
- %run: Pythonスクリプトを実行します。
%run my_analysis.py - %timeit: コードの実行時間を測定します。例えば、10000までの数の二乗和を計算する時間を測定してみましょう。
%timeit sum([i**2 for i in range(10000)]) - %matplotlib inline: Matplotlibの描画モードをインラインに設定します。
%matplotlib inline import matplotlib.pyplot as mpl mpl.plot([10, 20, 30], [40, 50, 60]) mpl.show() - %%writefile: セルの内容をファイルに書き込みます。例えば、2つの数値を足し算する関数をファイルに保存します。
%%writefile calc_utils.py def sum_values(x, y): return x + y
4. デバッグ機能
IPythonは便利なデバッグツールを提供します。`%pdb`コマンドでデバッグモードを有効にできます。
%pdb
プログラムがエラーを発生させると、自動的にデバッグモードに入り、変数の値を確認したり、コードを実行したりすることができます。
5. 変数の管理
IPythonには、`%who`、`%whos`、`%reset`などのコマンドで変数を確認・管理する機能があります。
- %who: すべての変数をリストアップします。
%who - %whos: すべての変数の詳細情報(型、値、サイズなど)を表示します。
%whos - %reset: すべての変数をクリアします。
%reset
6. マルチライン入力
IPythonは複数行のコード入力をサポートしています。`Ctrl + Enter`キーで複数行のコードを実行できます。
def multiply(x, y):
result = x * y
return result