pythonvenv(virtual environment)使用了错误的Python版本

2024-10-01 02:27:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我同时安装了python3.7和3.6。但在我的配置文件中,我设置为使用3.6,这确实是一个由which python3报告的版本。在

$ which python3 /Library/Frameworks/Python.framework/Versions/3.6/bin/python3

然后我通过运行python3 -m venv venv创建虚拟环境

我所有的东西都和3.6有关。我用ls -la venv/bin和检查venv/pyvenv.cfg来确认这一点。在

我激活虚拟环境。在

然后用pip install zappa安装一个zappa库。在

当我运行zappa deploy时,我得到一个错误:python3.7不受支持。为什么一个库要使用没有在virtualenv中配置的Python版本?我如何使它使用正确的版本?在

(venv) $ zappa deploy
Traceback (most recent call last):
  File "/Users/t/Projects/djzappa/Spheres/venv/bin/zappa", line 7, in <module>
    from zappa.cli import handle
  File "/Users/t/Projects/djzappa/Spheres/venv/lib/python3.7/site-packages/zappa/__init__.py", line 12, in <module>
    raise RuntimeError(err_msg)
RuntimeError: This version of Python (3.7) is not supported!
Zappa (and AWS Lambda) support the following versions of Python: ['2.7', '3.6']

注意:我并没有像大家所建议的那样使用virtualenv,也没有像其他现有答案所指的那样使用virtualenv。在

enter image description here


Tags: 版本whichbinvirtualenvvenvline虚拟环境users
2条回答

创建环境时使用此选项:

virtualenv  python=/usr/bin/python3.6 

但是如果您想使用venv,首先,检查您的终端中的python3是否如您所愿引用python3.6。在

如果不是-使用python3.6的完整路径运行命令,而不是python3 -m venv venv中的唯一python3。在

编辑:为什么你的别名python3是指python3.7-这可能取决于你使用的操作系统和安装顺序。很难说。在

Python版本不同于virtualenvpython版本,这就是它抱怨的原因。 您可以重新创建虚拟环境(删除现有的虚拟环境)并使用以下命令

virtualenv python=your python version herevenv 或者

mkvirtualenv venv python=your python version here

如果要使用mkvirtualenv命令创建虚拟环境。在

相关问题 更多 >