如何为指定版本的Python创建虚拟环境?
当前回答
您可以使用所需的python版本调用virtualenv。例如:
python3 -m virtualenv venv
或者直接指向虚拟路径。例如,对于窗口:
c:\Python34\Scripts\virtualenv.exe venv
通过运行:
venv/bin/python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
您可以看到安装在虚拟环境中的python版本
其他回答
sudo添加apt存储库ppa:死蛇/ppa
sudo apt更新
sudo apt install python_version(例如:sudo apt-install python3.8)
python_version-m venv env(例如:python3.8-m venv nv)
.env/bin/activate
以上步骤将解决python版本的env问题。
很惊讶至今没有人提到康达。我发现这比这里提到的其他方法要简单得多。假设我有python2.9和python2.7,我正在研究的一个项目是python2.5.4,我可以简单地使用conda命令为3.5.4创建隔离的虚拟env,而无需下载任何其他内容。
要首先查看可用python版本的列表,请使用以下命令
conda搜索“^python$”
要为python版本x.y.z创建虚拟环境,请使用以下命令
conda create-n yourenvname python=x.y.z
使用激活venv
conda激活你的envname
使用停用
conda停用
要在完成后删除虚拟环境,请使用以下命令
conda remove-n yourenvname--all
-p方法运行良好,但您必须记住每次都使用它。如果您的目标是切换到较新版本的Python,这是一个痛苦,也可能导致错误。
您的另一个选项是设置一个环境变量,该变量的作用与-p相同。通过~/.bashrc文件或管理登录会话的环境变量的任何位置设置:
export VIRTUALENV_PYTHON=/path/to/desired/version
然后,每当您不在命令行上指定-p时,virtualenv就会使用它。
在mac上,我使用pyenv和virtualnvwrapper。我必须创造一个新的虚拟世界。你需要自制程序,如果你在mac上,我会假设你已经安装了,但只是为了好玩:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install pyenv
pyenv install 2.7.10
pyenv global 2.7.10
export PATH=/Users/{USERNAME}/.pyenv/versions/2.7.10/bin:$PATH
mkvirtualenv -p ~/.pyenv/versions/2.7.10/bin/python {virtual_env_name}
我还冻结了我的需求,这样我就可以简单地在新的virtualenv中重新安装:
pip install -r requirements.txt
从Python 3开始,文档建议使用以下方法创建虚拟环境:
python3 -m venv "my_env_name"
请注意,venv不允许使用其他版本的Python创建虚拟环境。为此,请安装并使用virtualenv包。
过时的信息
pyvenv脚本可用于创建虚拟环境:
pyvenv "/path/to/new/virtual/environment"
自Python 3.6以来已弃用。