Windowsで最強のPython開発環境を構築するまで【都度更新】
WindowsでのPython開発環境。
試行錯誤の上ようやく落ち着いてきたので纏め。
随時更新する。
全然最強じゃ無いじゃん、とかのツッコミは無しで。
目次
環境
Windows10 64bit Python for Windows(3.5.1) Eclipse4.6 PyDev(Eclipseプラグイン) Cygwin VMware
希望する開発環境
Python for Windows 64bit
Windowsなのでもちろんこれ。
cygwinでの作業も考えてcygwin内のpythonを使用していた時期もあったがライブラリ周りで躓く事が多かった為、Windows版の利用に落ち着いた。
PyDev(Eclipseプラグイン)
IDEはEclipseのプラグインPyDevを利用。
コード補完とブレークポイントによるデバッグも可能。
色々試したがイマイチ使いずらかったIDE
SublimeText2
使いづらいという訳では無いけど何かもの足りなかった。
IDEに乗り換えたい気持ちが日に日に募ってきたので使うのをやめた。
導入方法例↓
PyCharm
- コード補完の挙動が怪しかった(保管されないコードがある等)
- 日本語に対応しておらずたまにメニュー操作でハマる
ネットを見る限り使用者は多そう、知り合いのエンジニアも使っていた。
恐らく自分が知識低いだけと思うけど、使いにくさを感じた。
Visual Studio Express 2015 Python Tools
- デバッグもコード補完も出来てまぁまぁ快適
- 評価版だったようで、30日過ぎたら使用できなくなった
- VisualStudiという事でソリューションディレクトリや専用ファイルが作成されたりするのが何か嫌
- コード補完がたまに怪しい
個人的にはまあまあ使い勝手は良かったので今後ずっとこれを使ってく予定だったけど試用期間過ぎたら使えなくなったので使うのをやめた。
恐らく無償版はあると思うけど調べてない。
コード補完の設定でハマった時のメモ↓
Visual Studio Express 2015 Python Toolsでコード補完が効かない時の対処方法 - ボールを蹴りたいシステムエンジニア
Cygwin
ローカル環境でも出来る限りLinuxに近い形で動作確認を行う為に利用。
PyDev上でのpythonの実行動作確認は行えるが、結局本番環境はLinuxなので。
人によっては不要かもしれないが、自分はコマンド操作が楽で好きなので利用。
注意点としてcywinでのpython実行はcygwinのpythonでは無くwindowsのpythonが実行されるようPATHの設定やalias設定を行う事。
自分の環境では以下のようにcygwinの.bashrcに記述して利用している。
alias python-windows='/cygdrive/c/Python3.5/python.exe' alias pip-windows='/cygdrive/c/Python3.5/Scripts/pip3.5.exe'
サクラエディタとかcygwinから使いたかったら適宜設定する
function sakura() { cygstart /cygdrive/c/Program\ Files\ \(x86\)/sakura/sakura.exe `cygpath -aw $*` & }
VMware
開発環境というよりは学習や動作検証の為に利用。
機械学習ライブラリ周りの学習の為にはやはりLinux環境での確認が色々と捗る。
PyDevでの実装コードとVMwareのソース連携はcygwinからscp経由で連携する。
Windowsでのpython開発環境で気を付ける事
ライブラリのインストール
後述する機械学習ライブラリも該当するが、pipを利用してのライブラリインストールは(gccビルド等)本来Linxu環境での動作が想定されている為、windows環境でインストールをしても正常に動作しない事がある。
非公式ながら有志の方が作成したWindows版のライブラリをWheelファイルからインストールする。
当該ライブラリ名で検索して環境・バージョンに適したファイルをダウンロードする。
Python Extension Packages for Windows - Christoph Gohlke
Wheelファイルからのインストールでも少しハマったのでその時の記事↓
【解決】続・Windows10のpython3.5でlxmlをインストールしようとしたらハマったのでメモ - ボールを蹴りたいシステムエンジニア
Mecab
単純にMecabを使うだけなら公式のインストーラーからの導入で問題無く使えるんだけど、pythonで利用する為のmecab-pythonを導入がかなり面倒くさい。
MeCabはWindowsにおいてはVSを使ってコンパイルするようにソースコードが作られている為VSのインストールが必要。
更に公式のWindows版Mecabが32ビット版しか無い為色々とソースの修正が必要となる事等があり、かなりハマった。
何とか問題無く利用できるようになったけど何度挫折しようとした事か。
その時の記事↓
WindowsのPythonでMecabを実行する(+Cygwinでも実行する) - ボールを蹴りたいシステムエンジニア
かなりハマった。