1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Python環境の管理、運用方法のおすすめ!(pyenv + pipenv)

Posted at

はじめに

こんにちは、もちもちMAXです。
今までPythonを使って色々なことをやってきたのですが、その中で困るのがPythonバージョン、ライブラリの管理です。ちょっと試そうにも今のPythonバージョンでは動かない、ライブラリのバージョンが全然違うなど、よくあると思います。また、大量に仮想環境を作っていると何が何だか分からない、ということもありますよね?
そんな時におすすめのPython環境の管理、運用方法を説明します!

Python環境の管理とは

そもそもPython環境の管理というのは

  • Pythonそのもののバージョン
  • 使用するライブラリのバージョン

の2つを管理すること(と勝手に思っています)を言います。今回はそれぞれpyenvとpipenvでバージョンを管理していきます。

pyenvのインストール

pyenvは複数のPythonバージョンを1つのシステムにインストールし管理するためのツールです。Windowsでpyenvをインストールするには、コマンドプロンプトで下記を実行します。

pip install pyenv-win --target %USERPROFILE%/.pyenv

下記の2つのパスをユーザの環境変数の一番上に追加します。

%USERPROFILE%\.pyenv\pyenv-win\bin
%USERPROFILE%\.pyenv\pyenv-win\shims

※ %USERPROFILE%は、Windowsのコマンドプロンプトで使用される環境変数で、ログインしているユーザーのプロファイルディレクトリのパスを表します。なのでそのままコピペして実行してもらえればいけるはずです。

pyenvによるPythonのインストールは下記のコマンドで可能です。

pyenv install 3.9.4

pipenvのインストール

pipenvは仮想環境を作成し、プロジェクトごとに独立したライブラリのバージョン管理をおこなうツールです。pipenvのインストールはpipで簡単にできます。

pip install pipenv

pipenvで仮想環境を作成する際は、適当なディレクトリに移動し下記のコマンドを実行します。

pipenv install

仮想環境作成後に、下記のコマンドで仮想環境に入ることができます。

pipenv shell

最後に、下記のコマンドで所望のパッケージを仮想環境にインストールできます。

pipenv install numpy

ちなみに、pipenvの仮想環境では↑キーで直前のコマンドを表示することができません。これが地味にうざったいので、仮想環境に入る際にpipenv shellではなく下記のコマンドを使うことをおすすめします。コマンドプロンプトではこれで↑キーが有効になります。

python -m pipenv shell

pyenvとpipenvの運用

ここまでの説明で自由にPythonのバージョンとライブラリのバージョンを管理することができるようになりました。ただ、このまま何も考えずにPythonインストール、仮想環境作成を続けていくと意外とごちゃついてきます。複数のプロジェクトを同時進行しているときはpyenvでPythonバージョンを変えるのが面倒になってきますし、そもそもどのPythonバージョンを使っていたかも分からなくなってきます。

そこで、おすすめの運用方法を紹介します。といっても、特にツールを使うわけではなくディレクトリ構成と名前にルールを付けるだけなので簡単です。

ルール1:pyenvはローカルで適用しPythonバージョンをディレクトリ名にする

文字で言っても分かりにくいと思うので、適用した結果のディレクトリ構成を示します。

working_dir
 │───python3803
 │───python3911
 └───python3104

こんな感じで、ディレクトリ名をPythonのバージョンにします。そして、それぞれのディレクトリでバージョンに合わせたコマンドを実行します。

pyenv local 3.9.11

このコマンドは実行時のディレクトリにのみpyenvを適用するもので、python3911のディレクトリで実行すればその配下でのみ3.9.11のPythonが有効になるということです。

ルール2:pipenvはルール1で作成したディレクトリ配下で実行する

pipenvの仮想環境はpython3911などの特定のPythonが実行可能なディレクトリ配下で作成します。基本的にはプロジェクトの名前をそのまま付ければ良いです。

working_dir
 │───python3803
 │───python3911
 │ │────deep_learning      機械学習系のライブラリを入れる
 │ └────web_server         webサーバ用のライブラリを入れる
 └───python3104

これらの2つのルールを守って運用するだけでpython環境で悩むことがかなり減るかと思います。

さいごに

今回はPython環境の管理、運用方法について説明しました。この運用を始めてからPython環境がぐちゃぐちゃになることも無くなりストレスフリーで開発できています。運用方法は状況によって最適なものが変わると思うので今回紹介したものは色々ある内の1つと思ってください。もし合いそうであれば是非やってみてください!

最近、ブログと自作アプリのLPを立ち上げたので是非見てってください!それでは!!

ブログ↓
https://mochinochikimchi.com

アプリLP↓
https://mochinochikimchi.com/applications/mealmotion/index.html

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?