トップ 一覧 検索 ヘルプ RSS ログイン

Pythonで数値計算の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!Python とは

オブジェクト指向のインタプリタ型・スクリプト言語です。Perl や Ruby と比較されることが多く、だいたい同じことができます(Perlよりは仕様がすっきりしている、Ruby ほどオブジェクト指向が徹底していないといった違いがあるようです)。文法は基本的に C に似ています。

汎用性があり、CGIプログラム、GUIプログラムの作成もできます。下記のモジュールを利用すれば、 R / Matlab 的な使い方(数値計算)も可能です。

!!インストール

[Download Python|http://www.python.org/download/]

Python は後方互換性を重視しない(理想を追求する傾向にある?)ようで、現行バージョンは、Python 2.x 系のPython 2.6.5とPython 3.x 系のPython 3.1.2に分かれているようです(2010年3月26日現在)。

Python 3.x 系への拡張モジュールの対応がまだ進んでいないようなので、Python 2.x 系の最新バージョンをインストールするのが無難のようです。

!!コンソール

*コマンドプロンプト
*IDLE(Python GUI)
*[IPython|http://ipython.scipy.org/moin/](色が付けられたりする)

などいくつか選択肢があるようですが、私は対話型処理をしたいときは、コマンドプロンプトから Python を起動しています。

バッチ処理する場合にも、コマンドプロンプトから
 python filename.py
という感じで実行しています。

!!エディタ・IDE

インタプリタ型なので、それほど環境は選ばないと思います。私は秀丸エディタに色だけつけて(強調表示)使っています。

比較的使いやすいIDEとして、[pyscripter|http://code.google.com/p/pyscripter/] というのがあります。Eclipse, NetBeans にも Python 用のプラグインがあるようです(重い)。

!!数値計算用モジュール

*[NumPy|http://numpy.scipy.org/]: ベクトル、行列計算など
*[SciPy|http://www.scipy.org/]: 科学技術計算(NumPyの拡張)
*[Matplotlib|http://matplotlib.sourceforge.net/]: グラフ描写(NumPy, SciPyの拡張)

ほかにもいろいろあるようですが、いまのところ標準モジュール以外ではこの3つを抑えておけばよいようです。

(Numeric, NumArrayは古いベクトル、行列計算ライブラリ?NumPyとSciPyの関係がはっきりしないが、SciPyがNumPyに依存する関係にあることは確か)

標準モジュール では意外と csv なんかが重要かもしれません。