Python仮想環境を使用して、独立したpython環境を作成し、依存関係とバージョンの競合を回避し、権限の問題を間接的に処理します。しかし、Ubuntuでセットアップして使用する最も簡単な方法は何ですか?
仮想環境は、プロジェクトごとに依存関係を管理および分離する方法を提供します。さらに、これらはSudo pip install
状況全体も回避します。これは、 https://askubuntu.com/a/802594/150 で説明したように、セキュリティ上のリスクです。公式のPythonドキュメントも 仮想環境の使用を奨励しています 。
Python 2とPython 3の両方の仮想環境を作成して使用する最も簡単な方法は、virtualenv
またはapt-get
を使用してapt
をインストールすることです。 Pythonプロジェクトごとに、virtualenvを作成してアクティブ化します。 virtualenvは特定のPythonバージョンに固有であることに注意してください。アクティベーション後、Python 2または3を使用しているかどうかに関係なく、pip
を使用して通常どおりPythonパッケージをインストールします。 Pythonにpip3
を使用する必要はありません。Sudo
はvirtualenv
のインストールにのみ使用され、pip
では使用されないため、前述のセキュリティリスク。そのためのコマンドは次のとおりです。
Sudo apt update
Sudo apt install virtualenv
cd ~/desired_directory # cd to desired_directory
virtualenv venv # create virtualenv named venv for default system Python, which is Python 2 for Ubuntu
source venv/bin/activate # activate virtualenv
pip install -U pip # upgrade pip in case it is outdated
pip install desired_package # install desired_package
Python 3のvirtualenvを作成する場合は、virtualenv venv
を次のように置き換えます。
virtualenv venv -p python3
https://virtualenv.pypa.io/en/stable/ でvirtualenv
のさまざまな機能の詳細をご覧ください。
python-virtualenv をインストールするだけです。その後、virtualenv
コマンドを使用してvirtualenvを作成できます。詳細については それらのドキュメント をご覧ください。
仮想環境(venvs)は非常に人気があるため、機能はpython自体に含まれています(3.3以降)。 Ubuntuで使用するには、python3-venv
をインストールする必要があります(ensurepip
モジュールが利用できないため):
Sudo apt-get install python3-venv
その後、使用できます
pyvenv myvirtualenv
myvirtualenv
という仮想環境を作成します。次に使用できます
source myvirtualenv/bin/activate
仮想環境をアクティブにします。無効にするには、単に入力します
deactivate
EDIT:pyvenv
スクリプトは、python3 -m venv
を支持して廃止されました。これにより、どのPythonインタープリターpyvenv
が接続されているか、したがってどのPythonインタープリターが仮想環境で使用されるかについての混乱を防ぎます。 ( ソース )