目录
第二种方式 -- 使用 virtualenv的替代方案venv:
问题背景:
由于在工作中使用Python时遇到如下的问题:
RuntimeError: failed to find interpreter for Builtin discover of python_spec='python2'
相关的处理方式有很多,比如重新安装对应版本的Python,重新添加对应的环境变量等。
pip install python2
pip install python3
问题解决:
使用下面的命令进行virtualenv的安装:
virtualenv --python="C:\Python27\python.exe" venv2
virtualenv --python="C:\Python38\python.exe" venv3
需要注意在安装过程中出现如下问题时,需要重新安装virtualenv的版本:
~virtualenv --python="C:\Python27\python.exe" venv2
TypeError: _execute_child() takes exactly 18 arguments(17 given)
这里推荐v16.7.10的版本,因为这个版本已知与Python2兼容。
第一种方式 -- 使用不同版本的virtualenv
:
首先安装上述版本的virtualenv:
pip install virtualenv==16.7.10
然后再创建虚拟环境:
~virtualenv --python="C:\Python27\python.exe" venv2
Running virtualenv with interpreter C:\Python27\python.exe
Already using interpreter C:\Python27\python.exe
New python executable in C:\Users\venv2\Scripts\python.exe
Installing setuptools, pip, wheel...
done.
~virtualenv --python=“C:\Python38\python.exe” venv3
Running virtualenv with interpreter C:\Python38\python.exe
Already using interpreter C:\Python38\python.exe
Using base prefix 'C:\\Python38'
New python executable in C:\Users\venv3\Scripts\python.exe
Installing setuptools, pip, wheel...
done.
第二种方式 -- 使用 virtualenv
的替代方案venv
:
但如果你在迁移到Python 3的过程中遇到问题,对于Python 3来说,可以直接使用内置的venv
模块。虽然这对Python 2不适用,但这可能是一个解决方案。
第三种方式 -- 手动创建虚拟环境:
- 下载并解压 virtualenv 的源码包。
- 运行 python setup.py install 来安装。
# 下载并解压 virtualenv 源码包
curl -O https://files.pythonhosted.org/packages/source/v/virtualenv/virtualenv-16.7.10.tar.gz
tar xvfz virtualenv-16.7.10.tar.gz
cd virtualenv-16.7.10
# 安装 virtualenv
python setup.py install
第四种方式 -- 升级Python解释器和操作系统
确保你的Python解释器和操作系统都是最新版本的。虽然这对Python 2不适用,但对于未来的开发和兼容性问题,升级到Python 3和最新的操作系统版本是一个更为长远的解决方案。
小结:
采用上述方式都可,但需要确定如何解决会更满足你的需求。
我在具体过程中最后采取了第一种方式,比较简单快捷一些。