3
3

More than 3 years have passed since last update.

WindowsでPythonのマイナーバージョン管理(仮想環境構築)する方法(PyenvやWSL無し)

Posted at

Windowsでもバージョン管理がしたい!

誰でも思いつく方法かもしれませんが、一度Pythonのバージョンを、仮想環境用のバージョンに戻して仮想環境を作成し、もとに戻すという方法です。
仮想環境で検索すると、pyenvが出てきて余計混乱してしまった経験と、venvで昔のバージョンのPythonの仮想環境構築をする方法が分からなかったことから、この記事を作りました。

「AnacondaのAnaconda Navigatorを使えば良いじゃないか」と思われる人が多いと思いますが、僕のanaconda環境では、jupyterを起動すると「_Contextvarsフォルダ」が無いというエラーが発生し、どれだけ調べても解決方法が出てこなかったので、今回紹介する方法(Anacondaを使わない方法)でマイナーバージョンを管理することにしました。

経緯

筆者がいつも使用しているPCにインストールされたpythonは、バージョンが3.8.1であった。しかし、実務作業を始めるにあたり、バージョン3.6.6の仮想環境構築が必要になった。

py -3 <実行したいこと>で、python3系と
py -2 <実行したいこと>で、python2系のバージョン管理が出来ることは知っていた。

しかし、上記の様に、3.6や3.8といったマイナーバージョンの管理までは、(筆者が調べる限り)pyenvを使うほかなかった。

そこで、WSLを用い、pyenvでバージョン管理してみたが、Ubuntsの起動が面倒だった。また、筆者が愛用しているIDE:Pycharmでpyenvによって管理されたPythonを使うには、デーモンサーバへのssh接続確保をUbunts起動の度に行う等、やはり工程が多かった(参考:PyCharm + WSLを導入したWindows10でのDjango開発)

なるべく面倒な操作無しで、かつ簡単にpythonのバージョン管理が出来ないか考えた。

方法

Python3.8と3.6のダウンロード

説明は省きます。少なくとも3.8と3.6なら一緒にインストールしてしまって問題は無かったです。2回目にインストールするバージョンは、pathを通す設定がoffになっていることをキチンと確認してください。

Python3.6でvenvする

1:Pathを仮想環境構築したいバージョンに変える

スタートボタン

「システムの詳細設定の表示」で検索、実行

環境変数(N...)

上の欄(ユーザー環境変数)のPathをダブルクリック

pythonのデフォルトのインストール先(筆者の場合は以下)である、
C:\Users\{{ユーザー名}}\AppData\Local\Programs\Python\Python38\Scripts\

C:\Users\{{ユーザー名}}\AppData\Local\Programs\Python\Python38\
がpathに入っていると思うので、このPython38Python<構築したい仮想環境のバージョン>に変える。私の場合は、Python36に変えた。

決定連打

2:venvで仮想環境構築

一応コマンドプロンプトでPythonと入力。バージョン確認して合ってることを確認

cd <目的のPath>で、仮想環境構築したい場所へ移動

コマンドプロンプト
Python -m venv <仮想環境名>

で仮想環境作成

コマンドプロンプト
仮想環境名/Scripts/activate

で仮想環境起動、確認してください

3:Pathを戻す

省略します。1と同じ方法でpathを編集し、自分の使いたいバージョンに戻してください。

Pycharmを使ってる人向け

File

Settings

Project Interpreter
から、プロジェクトのインタープリターのパスを、構築した仮想環境のパスにすると、そのプロジェクト起動時に、自動的にその仮想環境にアクセスしてくれます。
こうしてプロジェクトごとにインタープリターを設定すれば、よりマイナーバージョン管理が楽になると思うので、Pycharmを使っている人はぜひ設定してみてください。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3