web-dev-qa-db-ja.com

既存のvirtualenvのpythonバージョンを変更するには?

python 3.6を使用して仮想環境を作成した後、システムをアップグレードし、python 3.7をシステム全体にインストールしました。 python 3.6を検索しているため、仮想環境でpythonファイルを実行できなくなりました。

システム全体のバージョンと一致するようにvirtualenv pythonバージョンをアップグレードする方法、またはその特定の仮想環境のpythonバージョンをダウングレードする方法を教えてください。

私はマンジャロを使用しています。

8
dAn

EDIT 1

いくつかのテストを行い、(少なくとも)実行可能ファイルを更新する別の「優雅な」方法を見つけました。仮想envが最初にvirtualenv -p /path/to/my/python2.7 .venvのように作成されたと仮定しましょう。実行可能ファイルは、特定のpythonのようなバージョンに更新できます:virtualenv --clear -p /path/to/my/python3.6 .venv.venv/bin/pythonpython symlinkがls -la .venv/bin/python。古い実行可能ファイルは./venv/bin/のままです。

注:特定のターゲットバージョンpythonをインストールする必要があります。


このリンク を参照してください。

Virtualenvwrapperには、virtualenvを管理するための便利なコマンドがいくつか付属しています。

Pythonバージョンを変更するには:

  1. 現在の環境セッションを非アクティブ化します。

  2. 多くのパッケージまたはライブラリがインストールされている場合は、requirements.txtファイルを作成することをお勧めします。必要に応じてバージョンを編集することを忘れないでください。

  3. Wrapperコマンドを使用してvirtualenvを削除します。rmvirtualenv

    • これにより、virtualenvは削除されますが、プロジェクトファイルは残ります。
  4. Python希望のバージョンで新しいvirtualenvを作成します。

    • 例:mkvirtualenv -p python3 env-name

    • Python versionは-pフラグとバージョンで指定できます。requirements.txtファイルがある場合は、-r requirements.txtで指定できます

  5. ここで、新しいvirtualenvをプロジェクトディレクトリにバインドします。完全なパスを指定できますが、新しいvirtualenvをアクティブにしてプロジェクトディレクトリに置く方が簡単です。次に、コマンドを実行します。

例:setvirtualenvproject

この回答があなたの役に立つかどうかを私に教えてください!

5
Thomas Hesse