如何为指定版本的Python创建虚拟环境?
当前回答
在窗口上:
py -3.4x32 -m venv venv34
or
py -2.6.2 -m venv venv26
这使用py启动器,它将为您找到正确的python可执行文件(假设您已经安装了它)。
其他回答
有一种更简单的方法,
virtualenv venv --python=python2.7
感谢您的评论,只有在系统级安装了python2.7(例如/usr/bin/python2.7)时,这才有效。
否则,如果你正在使用自制程序,你可以使用路径来给你想要的。
virtualenv venv --python=/usr/local/bin/python
您可以找到安装python(Linux)或py-0p(Windows)的路径
这也适用于python 3。
which python3
>> /usr/local/bin/python3
virtualenv venv --python=/usr/local/bin/python3
最终冷凝至:
virtualenv venv -p `which python`
virtualenv venv -p `which python3`
很惊讶至今没有人提到康达。我发现这比这里提到的其他方法要简单得多。假设我有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
这适用于我在Windows 10中的使用,在那里我有Python 3.7,并希望降级到Python 3.6.6中的项目:
我使用“venv”创建了一个名为“venv“的新环境,我从https://www.python.org/downloads/windows/ ; install“下载Windows x86-64可执行安装程序-”;然后在要创建环境的目录中使用以下命令行
>C: \用户\。。。\Python\Python36\Python.exe-m venv venv
最后,我使用命令行激活了环境:
>venv\Scripts\activate.bat
并通过调用以下命令检查python版本:
>python--版本Python 3.6.6
Mac OSX 10.6.8(雪豹):
1) 当您执行pipinstallvirtualenv时,pip命令与您的一个python版本相关联,virtualenv将安装到该版本的python中。你可以的
$ which pip
看看这是什么版本的python。如果您看到以下内容:
$ which pip
/usr/local/bin/pip
则执行以下操作:
$ ls -al /usr/local/bin/pip
lrwxrwxr-x 1 root admin 65 Apr 10 2015 /usr/local/bin/pip ->
../../../Library/Frameworks/Python.framework/Versions/2.7/bin/pip
您可以在输出中看到python版本。
默认情况下,这将是用于您创建的任何新环境的python版本。但是,您可以使用-p标志指定计算机上安装的任何版本的python,以便在新环境中使用:
$ virtualenv -p python3.2 my_env
Running virtualenv with interpreter /usr/local/bin/python3.2
New python executable in my_env/bin/python
Installing setuptools, pip...done.
virtualenvmy_env将在当前目录中创建一个文件夹将包含Python可执行文件和pip的副本[command],可用于安装其他软件包。
http://docs.python-guide.org/en/latest/dev/virtualenvs/
virtualenv只是将python从计算机上的某个位置复制到新创建的myenv/bin/目录中。
2) 系统python位于/usr/bin中,而我安装的各种python版本默认安装在:
/usr/local/bin
3) 我安装的各种蟒蛇都有类似于python2.7或python2.2的名称,我可以使用这些名称而不是完整路径。
==========虚拟说唱歌手=========
1) 我在让虚拟说唱歌手工作时遇到了一些问题。这就是我最后放入~/.bash_profile的内容:
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/django_projects #Not very important -- mkproject command uses this
#Added the following based on:
#http://stackoverflow.com/questions/19665327/virtualenvwrapper-installation-snow-leopard-python
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python2.7
#source /usr/local/bin/virtualenvwrapper.sh
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
2) -p选项与virtualenvwrapper的工作方式不同:我必须指定要在新环境中使用的python解释器的完整路径(当我不想使用默认python版本时):
$ mkvirtualenv -p /usr/local/bin/python3.2 my_env
Running virtualenv with interpreter /usr/local/bin/python3
New python executable in my_env/bin/python
Installing setuptools, pip...done.
Usage: source deactivate
removes the 'bin' directory of the environment activated with 'source
activate' from PATH.
与virtualenv不同,virtualenvwrapper将在$WORKON_HOME环境变量指定的位置创建环境。这将使您的所有环境保持在一个位置。
是的,您只需要安装另一版本的python,并在命令中定义另一版本python的位置,如:
virtualenv/home/copayroll/Documents/env-p/usr/bin/python3
推荐文章
- 使用python创建一个简单的XML文件
- APT命令行界面式的yes/no输入?
- 如何打印出状态栏和百分比?
- 在Python中获取大文件的MD5哈希值
- 在Python格式字符串中%s是什么意思?
- 如何循环通过所有但最后一项的列表?
- python用什么方法避免默认参数为空列表?
- ValueError: numpy。Ndarray大小改变,可能表示二进制不兼容。期望从C头得到88,从PyObject得到80
- Anaconda /conda -安装特定的软件包版本
- 我在哪里调用Keras的BatchNormalization函数?
- 打印测试执行时间并使用py.test锁定缓慢的测试
- 插入一行到熊猫数据框架
- 要列出Pandas DataFrame列
- 在Django模型中存储电话号码的最佳方法是什么?
- 从导入的模块中模拟函数