【问题标题】:Python3 commmands not working in my virtual environmentPython3 命令在我的虚拟环境中不起作用
【发布时间】:2020-09-05 04:36:25
【问题描述】:

我的虚拟环境中安装了 Python-3.8.1,但默认版本仍然是 Python-2.7(因为 MacOS)

现在,每当我尝试运行以python3 开头的命令时,例如python3 manage.py startapp ...python3 manage.py runserver,我都会收到此错误:

SyntaxError: Generator expression must be parenthesized

【问题讨论】:

标签: python django macos virtual-environment


【解决方案1】:

您使用的是旧版本的 Django 吗?基于this Django 1.11 和 Python 3.7+ 不兼容。

要升级你的 django 包,首先切换到你的虚拟环境:

conda activate your-django-env-name

然后运行以下命令以在您的虚拟环境中获取最新版本:

pip install django --upgrade

【讨论】:

  • 嗨@Winston,是的,我的 Django 版本是 1.11.29,它安装在 Python2 文件夹中.....现在,我如何安装最新版本的 Django,比如 3.x , 在 Python3 文件夹中??
  • 首先,使用conda activate myDjangoEnv 切换到您的venv,然后运行pip3 install django --upgrade 以获取最新版本。
  • 升级django版本可能会破坏应用程序本身,最好使用支持django的旧版本python(3.6版)。
  • 好的!看起来他刚刚开始项目并创建应用程序,在这种情况下使用最新版本是更好的选择!
  • 同意,如果使用已经存在的项目或使用特定版本 django 的教程,最好使用所需的 django,否则使用最新版本的 django 是更好的选择。
【解决方案2】:
  1. 使用特定版本的 Python 创建环境:

conda create -n myenv python=3.6

  1. 使用特定包创建环境:

conda create -n myenv django=1.11.29

对于您的用例,我建议:

conda create -n myDjangoEnv python=3.6 django=1.11.29

在运行任何命令之前首先激活 conda 环境:

conda activate myDjangoEnv

您不需要输入“python3”,只需使用“python”即可。

【讨论】:

  • 由于您已经有一个名为“myDjangoEnv”的环境,请尝试使用答案中的方法创建一个新环境,看看错误是否得到解决。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-05
  • 1970-01-01
  • 2019-07-10
  • 2021-08-13
  • 1970-01-01
相关资源
最近更新 更多