WindowsにCPython開発環境を整える (VSCode + Git)
AWSやGoogleAPIをはじめ、なにかとPythonを書けたほうがよい環境になりつつあるため
CPythonの開発環境をセットアップしておく。
開発環境に利用するソフトウェアは、Linux/Mac/Windows全てにおいて使える必要があることを条件に考えた結果、次のソフトを使うことに決めた。
- エディタ
- VS Code
- バージョン管理ツール
- Git
今回はWindowsに設定する。
CPython
2.7系、3.5系等、目的のバージョンのインストーラを入手し実行する。
既に、新規プロジェクトの場合には3.x系の利用が促されているが、2.7系を今回は選択した。
インストール先は標準のC:\Python27のまま変更なし。
PATHの編集
Python.exeがある"C:\Python27"を環境変数PATHに追加する。
Windowsではモジュールのインストールに際し、わざわざ
python.exe -m pip install %MODULE_NAME%
とやらなければならないことと、VS CodeがPython.exeを見つけられないので
PATHに追加しておく。
pipのインストール
pipのインストーラget-pip.pyを入手し、Python.exeで引数に与えて実行する。
他のOSだとHTTPSから直接、ファイルとしてダウンロードすることなくシェルに渡して実行できるのだが
Windowsではできないため、一旦ファイルとして保存するしかない。
保存したら、コマンドプロンプトを起動し、保存したフォルダにcdして以下を実行する。
python.exe get-pip.py
最後に"Successfully installed pip-X.Y.Z"と表示されれば成功。
C:\Users\Anonymous\Downloads>python get-pip.py Collecting pip Downloading pip-8.1.2-py2.py3-none-any.whl (1.2MB) 100% |################################| 1.2MB 234kB/s Collecting wheel Downloading wheel-0.29.0-py2.py3-none-any.whl (66kB) 100% |################################| 71kB 853kB/s Installing collected packages: pip, wheel Found existing installation: pip 7.1.2 Uninstalling pip-7.1.2: Successfully uninstalled pip-7.1.2 Successfully installed pip-8.1.2 wheel-0.29.0 C:\Users\Anonymous\Downloads> |
virtualenvのインストール
pipを使いvirtualenvをインストールする。
python.exe -m pip install virtualenv
"Successfully installed virtualenv-X.Y.Z"と表示されれば成功。
CPythonについては以上でセットアップ終了。
VS Code: Visual Studio Code
2016/06/25現在、最新バージョンは1.2。
こちらのページから、OSにあったインストーラをダウンロードし、実行する。
途中表示されるダイアログはOKを選択し、初期設定から特に変える必要はない。
PATHの編集
VS Codeのドキュメントを見ると、
code .
というようにcode.exeがコマンドとして実行できる前提になっていることが多いので
その通りに実行できるようPATHにVS Codeのインストールフォルダを追加する。
Git
Windows版Gitをダウンロードしインストールするだけ。
プロジェクトを作り開発する
プロジェクトの作成
VS Codeではフォルダをプロジェクトとして扱うので、どこか適当な場所にプロジェクト用のフォルダを作る。
virtualenvでPython環境のインストール
上で作成したフォルダにコマンドプロンプトでcdし、virtualenvモジュールを使いPython仮想環境を作成する。
python.exe -m virtualenv %ENV_NAME%
例えば、virtualenvという名前のフォルダをPython仮想環境の関連ファイルを入れるサブフォルダとしたら
python.exe -m virtualenv virtualenv
とする。
VS Codeの起動
VS Codeを起動し、「ファイル」メニューの「フォルダーを開く」で、上で作成したフォルダを選択する。
.pyファイルの作成
なんでもよいのでPythonのファイルを作成する。
ファイルを作成したら、VS Code画面右下の☺のすぐ左側が"Python"となっていることを確認する。
Pythonになっておらず、"プレーンテキスト"になっていたら、そこをクリックし、Pythonを選択する。
launch.jsonの編集
メニューのデバッグアイコンをクリックし、デバッグメニューを表示する。
画面左上の再生ボタンのすぐ右のコンボボックスが"Python"となっていることを確認する。
そして、さらにすぐ右の歯車アイコンの"launch.jsonを開く"をクリックする。
launch.jsonの編集モードに移るので、configurations.pythonPathを追加し
上で作成したPython仮想環境内のPython.exeを指定する。
Python.exeは%ENV_NAME%/Scripts/python.exeにある。
{ "version": "0.2.0", "configurations": [ { "name": "Python", "type": "python", "request": "launch", "stopOnEntry": true, "program": "${file}", "pythonPath": "${workspaceRoot}/virtualenv/Scripts/python.exe", "debugOptions": [ "WaitOnAbnormalExit", "WaitOnNormalExit", "RedirectOutput" ] }, ... }
設定リロードのため、一度VS Codeを再起動する。
(バージョン1.2時点では、launch.jsonを編集しても直ちに今後の操作に反映されず、古い設定のまま動作するようだった)
正しく設定されれば、F5を押すとデバッグが開始できるようになる。
デバッグ実行時、デバッグ開始の最初の行で必ず一旦止まるのが仕様らしく、Visual Studioを使ったことがある人からすると違和感がある。。。
gitファイルの編集
Pythonの中間ファイル*.pycおよびvirtualenvフォルダの中身がGitの対象に含まれないように
.gitignoreを作成する。
*.pyc virtualenv/*
virtualenv内には、インストールしたPCの情報(特にインストールフォルダ名など)が含まれるため
プロジェクトを複数人で共有したり、インターネットに公開するときには気を付ける必要がある。
その場合、READMEなどに「インストール時はpipで○○と××のモジュールをvirtualenvフォルダに入れて」と注記しておく。