【问题标题】:Syntax error in "manage.py" file - django 2“manage.py”文件中的语法错误 - django 2
【发布时间】:2018-03-10 12:52:38
【问题描述】:

我不明白问题出在哪里,但我不断收到 "from exc" 行的语法错误,即使我没有更改代码。我已经检查了未闭合的括号、引号和缩进看起来对我的初学者来说是正确的。问题是这是 Django 2.0 虚拟环境的开箱即用代码,所以我只能假设当文件被拖入文本编辑器时,Sublime 以某种方式将其格式化错误?

import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)

【问题讨论】:

  • 您使用的是什么版本的 Python? Django 2.0 只兼容 Python 3,此语法在 Python 2 中无效。
  • @DanielRoseman 我正在使用 Python 3,并且我的 Mac 上安装了 Django 2.0。但我也安装了 Django 1.11。可能我的电脑默认版本不对?
  • @DanielRoseman 了解上下文,查看此链接youtu.be/QVX-etwgvJ8?t=5m37s(位于讨论“manage.py”文件的位置)

标签: django manage.py


【解决方案1】:

在命令行中:

python3 manage.py runserver

我关注的tutorial 只使用了“python manage.py runserver”而不是“python3”,由于某种原因,教程在运行时没有错误,但我收到了一个错误。

【讨论】:

  • 使用 virtualenv 是避免这种混淆的好方法。
【解决方案2】:

如果您的 manage.py 以“#!/usr/bin/env python”开头,请尝试将其更改为“#!/usr/bin/env python3”。这将强制它使用 Python 3.xx。它对我有用。

【讨论】:

    【解决方案3】:

    如果你有 python 3X "python3 manage.py runserver" 可以使用 "python3"

    【讨论】:

      猜你喜欢
      • 2018-06-17
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      • 2020-02-10
      • 2019-03-03
      • 2014-09-07
      • 1970-01-01
      • 2011-04-08
      相关资源
      最近更新 更多