如何为指定版本的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`
其他回答
〔2019年11月〕我需要在基于Python 3.8的Arch Linux系统上安装Python 3.7环境(env)。Python 3.7已不在系统中,因此我无法降级Python,以安装所需的包。
此外,我想在虚拟环境(venv)中使用该包/Python3.7。我就是这样做的。
下载Python版本源文件:
我从
https://www.python.org/downloads/source/
to
/mnt/Vancouver/apps/python_versions/src/python-3.7.4.tgz
然后,我将存档(源文件)提取到
/mnt/Vancouver/apps/python_versions/src/python-3.7.4/
安装:
[注:在我的系统env中,不是venv。]
cd /mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
time ./configure ## 17 sec
time make ## 1 min 51 sec
time sudo make install ## 18 sec
time make clean ## 0.3 sec
检查已安装的Python版本:
$ which python
/usr/bin/python
$ python --version
Python 3.8.0
$ which python3.7
/usr/local/bin/python3.7
$ python ## Python 3.8 [system / env]
Python 3.8.0 (default, Oct 23 2019, 18:51:26)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
$ python3.7 ## newly-installed Python 3.7 package
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>
$ python3.7 --version
Python 3.7.4
如何为特定的Python版本创建venv:
https://docs.python.org/3/tutorial/venv.html12.2.创建虚拟环境用于创建和管理虚拟环境的模块称为venv。venv通常会安装您可用的最新版本的Python。如果您的系统上有多个版本的Python,则可以通过运行python3或您想要的任何版本来选择特定的Python版本。要创建虚拟环境,请确定要放置虚拟环境的目录,并以脚本的形式运行venv模块,路径如下:python3-m venv教程env这将创建教程env目录(如果它不存在),并在其中创建包含Python解释器副本、标准库和各种支持文件的目录。...
创建Python 3.7 venv[在Python 3.8操作环境/系统上]:
python3.7 -m venv ~/venv/py3.7 ## create Python 3.7-based venv
source ~/venv/py3.7/bin/activate ## activate that venv
deactivate ## deactivate that venv (when done, there)
添加到~/.bashrc:
alias p37='echo " [Python 3.7 venv (source ~/venv/py3.7/bin/activate)]" && source ~/venv/py3.7/bin/activate'
测试Python 3.7 venv:
$ p37
[Python 3.7 venv (source ~/venv/py3.7/bin/activate)]
(py3.7)$ python --version
Python 3.7.4
(py3.7)$ python
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>
从Python 3开始,文档建议使用以下方法创建虚拟环境:
python3 -m venv "my_env_name"
请注意,venv不允许使用其他版本的Python创建虚拟环境。为此,请安装并使用virtualenv包。
过时的信息
pyvenv脚本可用于创建虚拟环境:
pyvenv "/path/to/new/virtual/environment"
自Python 3.6以来已弃用。
这是virtualenv的错误。只是升级你的pip应该是解决方案。
pip安装—升级virtualenv
是的,您只需要安装另一版本的python,并在命令中定义另一版本python的位置,如:
virtualenv/home/copayroll/Documents/env-p/usr/bin/python3
简单:
Linux系统
virtualenv venv --python=/usr/bin/python3.9
窗户
virtualenv venv --python=C:\Users\username\AppData\Local\Programs\Python\Python\python.exe
推荐文章
- 证书验证失败:无法获得本地颁发者证书
- 当使用pip3安装包时,“Python中的ssl模块不可用”
- 无法切换Python与pyenv
- Python if not == vs if !=
- 如何从scikit-learn决策树中提取决策规则?
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 将旋转的xtick标签与各自的xtick对齐
- 为什么元组可以包含可变项?
- 如何合并字典的字典?
- 如何创建类属性?
- 不区分大小写的“in”
- 在Python中获取迭代器中的元素个数
- 解析日期字符串并更改格式
- 使用try和。Python中的if
- 如何在Python中获得所有直接子目录