python - 当我们安装了新版本时如何安装旧版本的python
问题描述
我是新手 python 程序员,我已经安装了 python 3.7 和 2.7。我尝试在 cmd(用于使用 dlib 库)中使用“python setup.py install”命令安装 python 3.5.7,但它没有安装,这是错误:
Traceback (most recent call last):File "setup.py", line 25, in <module>sysconfig.get_config_vars()['CFLAGS'] = cflags + ' ' + py_cflags_nodist
类型错误:+ 不支持的操作数类型:“NoneType”和“str”
我尝试安装 python 3.4.9 但发生了同样的错误。
解决方案
流行的 Linux 发行版,如 Ubuntu,都带有 python2 和 python3。您可以将一个设置为默认 python,并将另一个作为 python3(或 python2)访问。
在 Windows 上,可执行文件只是python
(NOT python2
)。较新的 python 将覆盖较旧的可执行文件(不是实际的安装文件,而是环境路径)。
方式1:
而不是运行python filename.py
,给出python二进制文件的路径。比如C:/python27/bin/python filename.py
,确保 python 的路径是正确的。这将使用特定目录中的 python。这可能很麻烦,我不建议这样做。
方式2:
创建一个引用/path/to/python2的别名python2,运行为python2 filename.py
. 不要忘记将此别名添加到环境变量中。
方式三:
搭建虚拟环境。python3中包含的默认venv
[now],不支持创建不同python版本的虚拟环境。改为使用virtualenv
。
virtualenv --python=C:/python27/bin/python2.7 /path/to/new/virtualenv/
/path/to/new/virtualenv/Scripts/activate.bat
Virtualenv 文档:https ://pypi.org/project/virtualenv/
推荐阅读
- plsql - PLS-00302:必须声明组件“EXISTS”
- html - 对于某些屏幕尺寸,围绕 SVG 的一条像素垂直线(或侧面的垂直线)
- python - 从外部服务器接收带有 socketTextStream 的 TCP 流
- ruby-on-rails - 如何将ruby变量分配给javascript
- spring - spring boot 2 + entity/jpa 作为子模块
- python - Django:一个模型实例,用于两个其他模型实例的每个可能组合
- python - 有没有办法从函数中重命名 python 函数?
- mysql - 为什么不可能在具有不同整数类型的数据透视表上添加外键?
- swift - 将 [URL] 提取到 URL
- dns - 使用 dns-rr 将 DNAME 记录添加到 dnsmasq 配置文件