Pythonの仮想環境との依存関係の管理ワークフローの新しいツールを簡素化しようとしているのほとんどはvirtualenvの/ venvを継続して使用し、根本的なツールにも良い選択ですが、ほとんどの人が同じことをしたピップには十分安定していません。彼らはそれに少し問題があるが、少なくとも、より信頼性が。
基本コンセプト
ここではいくつかの基本的な概念は、次のとおりです。
- PyPAは:Pythonのパッケージング機関を指し、Pythonのパッケージ関連事業のメンテナンス関連プロジェクトの基としては、具体的には見 HTTPSを:// github.com/pypaを。
- PIP:Pythonのパッケージインストーラ。
- virtualenvの:Pythonの仮想環境管理ツール。
- Venv:組み込みの仮想環境管理ツールPythonの標準ライブラリはPython 3.3が追加され、Pythonの3.5は、仮想環境を管理するための推奨ツール、同様のvirtualenvの使用としてスタートしました。あなたは、Python 3を使用している場合、それは代わりにvirtualenvのvenvお勧めします。
virtualenvの/ venvは、仮想環境の管理を使用します
venvモジュール
あなたは、Python 3を(具体的には、上記のPython 3.3とは)使用している場合、それは標準ライブラリ構築された使用することをお勧めします venvモジュールの両方の方法と本質的に同じを使用して、交換用のvirtualenvのを、唯一の違いは、仮想環境を作成する方法です。
あなたがPythonの2を使用している場合は、それが唯一のvirtualenvのを選択することができ、あなたはそれをインストールする必要があります。パイソンのPythonの2> = 2.7.9やPython 3> = 3.4これらのバージョンはピップに沿って設置されますので、私は、文書の他のバージョンを参照することができ、あなたはすでにピップをインストールしていると仮定し、取付部。Windowsでvirtualenvのインストールするには、次のコマンドを使用します。
$ pip install virtualenv
他のオペレーティングシステムには、インストールするには、次のコマンドを使用することができます。
$ sudo pip install virtualenv
がsudoのピップはお勧めしません Pythonパッケージをインストールする方法を、それはまだ最もシンプルかつ均一な方法です。より安全な方法は、システムをインストールするには、パッケージマネージャを使用するか、インストールピップ--userを使用することです。
仮想環境を作成します。
我々はと呼ばれる雪を投影したと、対応するフォルダを作成し、ルートディレクトリに切り替え、その後:
$ mkdir snow
$ cd snow
あなたがvenvを使用する場合は、雪-venvは、仮想環境の名前です。次のコマンドを使用して仮想環境を作成するのではなく、仮想環境は、フォルダ名を作成したとしても、あなたは自由に変更できます(通常はvenv使用したり、仮想環境名としてENV):
$ python -m venv snow-venv
あなたはvirtualenvのを使用する場合は、次のコマンドを使用します。
$ virtualenv snow-venv
これは、現在のディレクトリに、あなたはGitが無視持つように.gitignoreファイルにこのフォルダ名を配置する必要が雪venvファイルフォルダと呼ばれる仮想環境を作成します。
仮想環境のアクティブ化
対応する起動スクリプトを実行することによって、仮想環境を活性化するために、異なるオペレーティングシステムの起動コマンド(起動スクリプトとパス)が少し異なっています。Windowsの(CMD.EXE)は、アクティブにするには、次のコマンドを使用します。
$ snow-venv\scripts\activate
LinuxとMacOSの(bashの/ zshの)は、次のコマンドを使用します。
$ source snow-venv/bin/activate
または:
$ . snow-venv/bin/activate
同様に、他の端末プログラムは、仮想環境を活性化するために対応する起動スクリプトを実行することができます。
仮想環境をアクティブにした後、コマンドプロンプトの前に現在の仮想環境の名前が表示されます。
(snow-venv) $
仮想環境を終了するには、コマンドを無効に使用します。
管理を頼るピップ使用
基本的な使用方法についての簡単なコラム、ほとんどの人は......フラスコに精通しているものの、例えば、最初の依存関係をインストールします。
(snow-venv) $ pip install flask
依存関係を更新します。
(snow-venv) $ pip install --upgrade flask
または:
(snow-venv) $ pip install -U flask
依存をアンインストールします。
(snow-venv) $ pip uninstall flask
また、すべての依存依存、PIPリストリストの詳細を表示するフラスココマンドが表示され、PIP。
次のコマンドは、手動で依存関係のリストを生成することができます。
(snow-venv) $ pip freeze > requirements.txt
手動で依存関係や依存の生産を開発する必要がある場合は、手動で、このような要件-dev.txtとして別々のファイル、への依存性の発達に関連する置くことができます。
あなたは(仮想環境を作成した後に)マシンの新しい環境で実行するプログラムを作成する必要がある場合にのみ依存関係からすべての依存関係をインストールするには、次のコマンドを使用する必要があります。
(snow-venv) $ pip install -r requirements.txt
速度が遅すぎるときにパッケージをインストールする場合、を具体的に参照して、は、PyPI国内のミラーを設定することを検討して、この記事。
バック他のツールからの移行
あなたが戻ってPipenvから移行したい場合は、この方法は非常に簡単です、唯一requirements.txtファイルを生成する必要があります。依存関係のリストを生成するには、次の一般的なコマンドを使用します。
$ pipenv lock -r
リストの開発に依存し、次のコマンドの出力を使用します。
$ pipenv lock -r --dev
その後、手動でコマンドを保存し、出力2 requirements.txtおよび要件-dev.txtです。
詩、Condaや他のツールから戻って移行するために使用することができます pipreqsを requirements.txtを生成し、それが依存関係のリストを生成するために、プロジェクトのコードに基づいて文をインポートします。
仮想環境と依存関係の管理がより便利になるように次回の記事で、私はそのようなようにvirtualenvwrapper、PIP-ツールとして、virtualenvの/ venv +ピップの使用に合わせて、いくつかの補助的なツールをご紹介します。