Pythonの環境構築方法
2014年春季版 ver. 0.1
森下のお勧め方法
2014-05-16
Katsuhiro Morishita
はじめに
• 本スライドは、ローカルやサーバ上
でターミナルを通じてPythonスクリプ
トを動かす環境の構築方法を解説し
ます
• Mathmatica風のGUIを使うにはIpython
とnotebookの組み合わせを利用します
が、(知らないので)本スライドで
は解説しません
Pythonの流儀
• 小さい実行エンジン
• ライブラリは適宜追加
• シンプルな文法
• 尐ない予約語数
• 字下げの強要
• バージョン依存問題への対応には仮想環
境を利用
OS別のPython本体の導入方法の違い
• Windows
– ビルド済みのものを入れるのが一般的
• Unix系
– パッケージ管理ツール(apt-get, yum)があれ
ば、ビルド済みが普通は用意されている
• Mac
– ビルド済みが用意されている
– まずはHomebrewをインストールしよう
Pythonの系統
• 2.xと3.x系統がある
• 文字列の扱いが大きく異なる
• その他、例外処理の書き方など尐々異なる
• 音系ライブラリの一部はまだ2.x系でないと
動作しない
• Python 2.xは2.7が最後であるとアナウンス済
み
– 2014-05-17現在、ver. 2.7.6
Pythonのインストール上の注意
• 注意対象OS
– Unix系OS(Red
Hat, Fedora, Mac, Ubuntu, etc.)
• 注意内容
– OSがPython 2.xを利用しており、パッケージ
の依存関係から別バージョンを上書きすると
OSが起動しなくなる
パッケージの配布形態
• Pythonのパッケージはソースやバイナリで配
布
• ソースの場合、ビルドが必要
• ビルドには数時間かかることもある
• ソースの公式配布サイト
– https://pypi.python.org/pypi
• Windows用バイナリ非公式配布サイト
– http://www.lfd.uci.edu/~gohlke/pythonlibs/
数値計算のための必須パッケージ
• 数値計算:NumPy
• 数値計算:SciPy
• グラフ、図形作成:Matplotlib
*上記のライブラリは、上から順にインストールする必要がある
その他の便利パッケージ
• パッケージ管理:distribute, pip
• 仮想環境:virtualenv
– 環境を汚したくない場合に使う
– パッケージの組み合わせが異なる環境の構築
に利用
• CSVデータ読み込み:Pandas
• 機械学習(各種):scikit-learn
• 自然言語処理:MeCab, Ngram, Nltk
• Oauth認証:requests-oauthlib
開発環境情報の賞味期限
• 1年だと思ってください
• 毎年、便利な環境構築方法が出てきます
• みんな移り気なので、古い方法は2年ほ
ど掛けて徐々にメンテナンスされなくな
ります
環境構築WINDOWS編
はじめに for Windows
• インストールなしにPythonを使う
– Portable Python
– http://portablepython.com/
– パッケージツールも同梱されている上、数値
計算に必要なパッケージは既に用意されてい
る
• 好きなPythonバージョンを使いたい場合は
次ページからの操作でインストール
– 実現したい機能に合わせて、利用パッケージ
のバージョン依存性を要チェック
まずはPython本体のインストー
ル
• ダウンロード先
– http://www.python.jp/download/
環境変数を設定
• 環境変数PATHに追加
– Python 3.4.xの場合、以下の3つを追加
• C:Python34
• C:Python34Scripts
• C:Python34Libsite-packages
必須パッケージの追加
• distribute
• pip
ビルド環境の構築
• ビルドが必要なパッケージを使うには、ビル
ドツールのインストールが必要
• Visual Studio 2013 Express/Proをインストール
– ネット接続環境
– 2時間は必要
– ハードディスク容量は3GB程度減るかもしれな
い
*x64版のアプリをビルドするためであっても、ビ
ルドツール自体がx64版である必要はありません。
複数のバージョンを使い分ける場
合
• WEBサービスのリリースを考えている場
合、virtualenvの1択
• 簡単に使い分けたいだけな場合はバッチ
ファイルの工夫で切り抜ける方が楽
virtualenvによるバージョン使い分
け
• pythonにvirtualenvを追加
– pip install virtualenv
• 使うバージョンのPythonをインストール
– パスは通さない
• virtualenvのコマンドで仮想環境を構築
– virtualenv --python=(Path)python.exe NAME
– 例: virtualenv --python=C:¥Python33¥python.exe py33
• ホームディレクトリにpy33が作成される
• コマンドプロンプトからpy33内のactivate.batを実行
し、任意のスクリプト・pipコマンドを実行
バッチファイルでバージョン使い
分け
• 全てのバージョンにパスを通す
– ただし、主に利用するバージョンが最初に走査さ
れる様にする
• python.exeのあるフォルダに以下の内容の
バッチファイルを置く
• バッチファイルの名前
– pythonXY.bat
– 例:python27.bat
@echo off
C:Python27Python.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
UNIX共通の開発環境構築編
次のツールを導入
• GCC最新版
• gfortranコンパイラ
• pyenv
*Macなら、Homebrewを使ってインストールした方が良い
MAC編
参考サイト:
http://blog.i97506051502.com/entry/2014/03/25/PythoninM
acOSX#Homebrew%20%E3%81%A7%20pyenv-
virtualenv%20%E3%82%92%E3%82%A4%E3%83%B3%E3%82
%B9%E3%83%88%E3%83%BC%E3%83%AB
パッケージ管理ツールを導入
• Homebrewをインストール
*PythonはHomebrewのフォーミュラに登録されている。
2014-05-16時点で登録されているものはPython 2.7.5とPython 3.4.0。
ただし、Pythonインタプリタのバージョンに依存したライブラリも存在
するため、HomebrewによるPythonのインストールはお勧めしない。
pyenvをインストール
• pyenvのインストール
– brew install pyenv-virtualenv pyenv
• ホームディレクトリに以下のファイルを
作成
– ファイル名「.bash_profile」
– 内容を以下に示す
• bashの設定を再読み込み
– source ~/.bash_profile
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)”
Python本体をインストール
• 以下のコマンドでインストール
– pyenv install x.y.z
例:pyenv install 3.3.5
Ref: http://morizyun.github.io/blog/python-pyenv-rehash-mac-development/
pyenvによるPythonの切り替え
• どこで合っても有効とする
• pyenv global 3.3.5
• 実行したディレクトリでのみ有効とする
• pyenv local 2.7.6
Macにビルド環境を作る
• App StoreよりXcodeをインストール
• Command Line Toolsをインストール
– 注意:OS X 10.9よりインストール方法が変
わった
• gcc最新版をインストール
– 正式リリースの最新版は2014-05-18現在で
4.8.2
– brew install gcc48
• gfortranをインストール
付録
Anacondaという手もある
• Anacondaとは、DARPAが支援したPythonの数値計
算環境パッケージ
• Windows, 各UNIX系OSに対応
– Intel Galileoにはminicondaが対応
• 2014-05-18現在
– 標準ではPython 2.7.5
– 仮想環境機能を利用して、Python 3.3.5を導入可能
• バイナリが配布されている他、pyenvでの導入もで
きる
– pyenvはUnix系のみ
• OpenCV等のビルド時に困る可能性はある

Pythonの環境導入 2014年春季版