Python Windows - eiichiromomma/CVMLAB GitHub Wiki

(Python) Windows

WindowsでIPython(のpylab)を使えるように

※ WindowsでのIPython環境の構築は現状だとPython Pythonxyが一番楽なのでそっち推奨

IPythonからnotepad以外のエディタを呼び出す

ユーザの.ipythonフォルダのprofile_default/ipython_config.pyを編集する。 通常

C:\Users\USERNAME.ipython\profile_default\ipython_config.py

に置く(最初は存在しない)。

問題は"Program Files"という空白を含むパス名。おまけに64bit版だと"Program Files (x86)"と括弧まで付いてくる。

Pythonの文字列はシングルクォート(')で良いのだが,そのままだと空白で引っ掛かる

例えば'c:/Program Files (x86)/sakura/sakura.exe'を実行させようとすると

import os
os.system('c:/Program Files (x86)/sakura/sakura.exe')

起動しない。(エラーコード1が返る)

が,Windowsの場合ダブルクォートで括った物を渡すとそのまま解釈されて動く。

import os
os.system('"c:/Program Files (x86)/sakura/sakura.exe"')

という訳で,上記のipython_config.pyに以下のように書いておくと,スペシャルコマンド %ed または %edit で任意のエディタを呼び出せる。

  c = get_config()
  app = c.InteractiveShellApp
  c.IPythonWidget.editor = '"c:/Program Files (x86)/sakura/sakura.exe"'
  c.TerminalInteractiveShell.editor = '"c:/Program Files (x86)/sakura/sakura.exe"'

非公式インストーラ

ここで様々なモジュールが公開されている。 ※環境によってはVC2008の再頒布パッケージが必要なので,Microsoftのページからx86あるいはx64を入手してインストール。Numpy-MKLも自環境に合わせたものを使用する。

ipythonを快適に使うための準備

  • Base-*
  • matplotlib-*
  • nose-*
  • numpy-MKL-*
  • PyQt-*
  • PyQwt-*
  • pyreadline-*
  • pyzmq-*
  • scipy-*
  • setuptools-*

をインストール。

Matplotlibのバグ修正

この項は

import matplotlib.pyplot

でエラーが出た場合に行なう。

c:\Python2?\Lib\site-packages\matplotlib\font_manager.py (?はバージョン依存) というファイルをエディタで開き、206行目付近の

if not local:

を探し

local = None
if not local:

のように一行書き加える。

ipythonの導入と設定

  1. 上記のサイトからだとコケるのでIPython配布元 からWindows用のインストーラを入手してインストール。

  2. 環境変数EDITORに普段使っているエディタのフルパスを設定

  3. スタートメニューのIPython->pylabのプロパティを開きリンク先を下記のように書き換える

    C:\Python2?\pythonw.exe "C:\Python2?\scripts\ipython-script.py" --pylab

(?はバージョン依存)

QtConsoleを使いたい場合はzmqにバグがあり、

ImportError: IPython.zmq requires pyzmq >= 2.1.4, but you have 2.1.10

のようなエラーが出る。バージョン番号を1桁しか見てない。 C:\Python2?\Lib\site-packages\IPython\zmq\init.pyで比較に失敗しているので

minimum_pyzmq_version = "2.1.0"

とでもすれば取り敢えず使える。

これで補完や%magicの他色々便利なipythonが使えるようになる。

基本的にpylabを使うのが便利。

エディタの変更

標準で%editを使うとnotepad.exeになるので、使い慣れたエディタを指定する。 やり方は簡単で、環境変数EDITORにエディタexeファイルのフルパスを指定する。 例えばサクラエディタの場合Program Filesにインストールされていたとすると

のようになる。パスに半角スペースを含む場合は""で括った方が確実。

但し、この環境変数が有効になるのは設定後に起動したアプリなので注意。

opencv2.4環境(2012/5/9)

パッケージ配布されているopencv2.4だとhighgui周りが怪しく画像が表示できない。2.4については今のところ本家 で配布されているOpenCV-2.4.0.exeを使う。

buildにあるpythonモジュールのcv2.pydとbuild/x86/vc10/binのdll, build/common/tbb/ia32/vc10のdllをPythonのLib/site-packagesへコピーすれば直ぐに使える。