2020年版 Python 開発環境を構築する方法
こんにちは。
本記事では、Python 環境の構築方法を解説します。
PC が変わったり、OS のクリーンインストールするたびに、「Python 環境ってどうやって作るんだったかな?」とググってしまいませんか?
私は年に2,3回はそういうタイミングがあるので自分のためにも本記事を書き起こしました。
今回の環境としては、
- Mac を前提に
- バージョンとパッケージを切り替えれるように
- 開発ツールは、今流行りの VSCode で
を例に解説をすすめます。
多くの部分は Windows でも通用すると思いますが、pyenv でのバージョン切り替えのあたりが Windows だと難しいかもしれません。
では解説していきます。
必要な箇所だけ読みたい人は目次をみてください。
Python のバージョンを切り替える
それほど活躍しないですが、Python のバージョンを切り替えるれるようにしておきます。
Python のバージョンを切り替えれるようにするには pyenv
を使います。
pyenv
をインストールする
$ brew install pyenv
続けて、Python の実行パスを切り替えれるようにシェルの初期処理に以下を追加します。
mac 標準の zsh であれば、.zshrc
に追加します。
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
pyenv
で新しいバージョンをインストールする
インストール済みのバージョンの確認は、
$ pyenv versions
* system (set by /Users/takada/.pyenv/version)
Mac であれば、Python 2.7 がプリインストールされています。
インストールできるバージョンを一覧するには、
$ pyenv install --list
3.9.0 など、バージョンだけの行がノーマルの Python のバージョンです。
例えば、3.9.0 をインストールするには、
$ pyenv install 3.9.0
pyenv
で バージョンを切り替える
現在のシェルの Python のバージョンを 3.9.0 に変更するには、
$ pyenv global 3.9.0
Python のパッケージ環境(仮想環境)を切り替える
Python 3.3 以上であれば、Python 標準の venv を使うといいです。
3.3 より前のバージョンは仮想環境を切り替えるのを諦めましょう。
venv は、python の機能なので、venv で仮想環境を作る前に python のバージョン自体を作りたい仮想環境のバージョンに切り替えておく必要があります。
pyenv
で バージョンを切り替える
$ pyenv global 3.9.0
venv
で仮想環境を作る
そのあとに、venv でディレクトリを指定して仮想環境を作ります。
$ python -m venv ~/projectA/.venv
これで、~/projectA/.venv
に仮想環境が生成されます。
Python のコードを格納するプロジェクトのルートフォルダに .venv
というフォルダ名で作ると、VSCode と相性がよいです。
仮想環境に入る
仮想環境を切り替えるには、
$ source ~/projectA/.venv/bin/activate
仮想環境にパッケージをインストールする
仮想環境に入ったあとは、通常通り pip でパッケージをインストールできます。
インストールしたパッケージは仮想環境に入っているときだけ有効です。
仮想環境から抜ける
仮想環境から抜けるには、
$ deactivate
VSCode の仮想環境を切り替える
VSCode では簡単に仮想環境を切り替えれます。
VSCode で、先程作った仮想環境のプロジェクトフォルダ ~/projectA/
を開くと、VSCode のインタプリタとして.venv
を選択できるようになります。
プロジェクトフォルダを開いた状態で、左下の Python のインタプリタをクリックすると選択ダイアログが表示されます。
ダイアログで、~/projectA/.venv
を選択してください。
VSCode でコードチェックする
コードチェックは flake8
がおすすめです。
VSCode でコードチェックを flake8
にするには、Python のプロジェクトフォルダの設定ファイル ~/projectA/.vscode/settings.json
に以下を追記します。
{
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": true,
"python.linting.enabled": true
}
すると、仮想環境に flake8
をインストールするようにインフォメーションがでるので、OK でインストールしてください。
VSCode で自動整形する
自動整形は yapf
がおすすめです。
VSCode で自動整形を flake8
にするには、Python のプロジェクトフォルダの設定ファイル ~/projectA/.vscode/settings.json
に以下を追記します。
{
"python.formatting.provider": "yapf"
}
すると、仮想環境に yapf
をインストールするようにインフォメーションがでるので、OK でインストールしてください。
保存時に自動整形するには、以下を settings.json
に追加します。
プロジェクトごとの setting.json
に追記してもよいですが、他の言語でも有効化するとよいので、ユーザごとの settings.json
(Ctrl-Shift-P のOpen Settings (JSON)
で開く setting.json) に追記するのをおすすめします。
{
"editor.formatOnSave": true
}
まとめ
本記事では、
- Python のバージョン、パッケージを切り替える仮想環境の構築方法
- VSCode で開発が始められる程度の設定方法
を解説しました。
最近のコメント