Python &引用;“不合格执行官”;尝试运行Django应用程序时从Numpy开始

Python &引用;“不合格执行官”;尝试运行Django应用程序时从Numpy开始,python,python-3.x,numpy,Python,Python 3.x,Numpy,manage.py #!/usr/bin/env python import os import sys if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings") try: from django.core.management import execute_from_command_line except ImportErr

manage.py

#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings")
    try:
        from django.core.management import execute_from_command_line
    except ImportError:
        # The above import may fail for some other reason. Ensure that the
        # issue is really that Django is missing to avoid masking other
        # exceptions on Python 2.
        try:
            import django
        except ImportError:
            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?"
            )
        raise
    execute_from_command_line(sys.argv)
运行命令python manage.py时运行服务器0.0.0.0:8002

   /..../python3.6_rhel7/lib/python3.6/site-packages/django/db/models/base.py:319: RuntimeWarning: Model 'dataServices.hsfiledetails' was already registered. Reloading models is not advised as it can lead to inconsistencies, most notably with related models.
      new_class._meta.apps.register_model(new_class._meta.app_label, new_class)
    Unhandled exception in thread started by <function wrapper at 0x7ff94e236578>
    Traceback (most recent call last):
      File "/..../python3.6_rhel7/lib/python3.6/site-packages/django/utils/autoreload.py", line 228, in wrapper
        fn(*args, **kwargs)
    File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
        __import__(name)
      File "/..../dataServices/models/__init__.py", line 3, in <module>
        from .bugPred import *
File "/..../python3.6_rhel7/lib/python3.6/site-packages/numpy/__init__.py", line 142, in <module>
        from . import core
      File "/..../python3.6_rhel7/lib/python3.6/site-packages/numpy/core/__init__.py", line 17, in <module>
        from . import multiarray
      File "/..../python3.6_rhel7/lib/python3.6/site-packages/numpy/core/multiarray.py", line 14, in <module>
        from . import overrides
      File "/..../python3.6_rhel7/lib/python3.6/site-packages/numpy/core/overrides.py", line 182
        exec(source_object, scope)
SyntaxError: unqualified exec is not allowed in function 'decorator' it is a nested function
/../python3.6\u rhel7/lib/python3.6/site packages/django/db/models/base.py:319:RuntimeWarning:Model“dataServices.hsfiledetails”已注册。不建议重新加载模型,因为这可能导致不一致,尤其是与相关模型的不一致。
新建\类.\元.应用.注册\模型(新建\类.\元.应用\标签,新建\类)
由启动的线程中存在未处理的异常
回溯(最近一次呼叫最后一次):
文件“/..../python3.6_rhel7/lib/python3.6/site packages/django/utils/autoreload.py”,第228行,在包装器中
fn(*args,**kwargs)
文件“/usr/lib64/python2.7/importlib/_init__.py”,第37行,在导入模块中
__导入(名称)
文件“/..../dataServices/models/_init_uuu.py”,第3行,在
从.bugPred导入*
文件“/..../python3.6_rhel7/lib/python3.6/site packages/numpy/_init__uuuuuu.py”,第142行,in
从…起导入核心
文件“/../python3.6_rhel7/lib/python3.6/site packages/numpy/core/_init__.py”,第17行,在
从…起导入多数组
文件“/..../python3.6_rhel7/lib/python3.6/site packages/numpy/core/multiarray.py”,第14行,在
从…起导入覆盖
文件“/..../python3.6_rhel7/lib/python3.6/site packages/numpy/core/overrides.py”,第182行
exec(源对象、范围)
SyntaxError:函数“decorator”中不允许使用非限定exec。它是一个嵌套函数
SyntaxError:函数“decorator”中不允许不合格的exec 它是一个嵌套函数

上面一个是Numpy在试图运行Django应用程序时出现的“Unqualified exec”语法错误

您能试试吗

pip uninstall numpy

你能试试吗

pip uninstall numpy


在回溯中混合使用Python2和Python3库表明可能存在无法解决的配置问题

如果您的应用程序需要使用Python3,则需要安装所有依赖项的Python3版本,并确保没有Python2库路径泄漏

对于Python2,反之亦然(但也要认真考虑尽快切换到Python3)

我在看

 File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
        __import__(name)

这清楚地表明,在Python2库中有一些东西,回溯中的所有其他库都提到Python3.6。Python2和Python3是不同的语言,不能很容易地混合(尽管使用例如
six
实际上可以)。

在回溯中混合使用Python2和Python3库表明可能存在无法解决的配置问题

如果您的应用程序需要使用Python3,则需要安装所有依赖项的Python3版本,并确保没有Python2库路径泄漏

对于Python2,反之亦然(但也要认真考虑尽快切换到Python3)

我在看

 File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
        __import__(name)

这清楚地表明,在Python2库中有一些东西,回溯中的所有其他库都提到Python3.6。Python2和Python3是不同的语言,不能很容易地混合使用(尽管你可以使用例如
six

我在运行Dash/Flask应用程序时也会遇到同样的异常。numpy 1.18.2第188行的numy/core/overrides.py中出现异常。只需在应用程序中执行导入numpy即可出现异常。事实上,2.7和3.6的混合导致了我的问题。我被迫使用CGI,我犯了一个错误,用系统默认的Python2.7.5启动CGI,但我的应用程序需要3.6。这可能是OP的问题所在。 以下是我正确的CGI的摘录:

#!/home/main_account/venv36/weather/bin/python
# Python virtualenv must be activated
activate_this = '/home/main_account/venv36/weather/bin/activate_this.py'

with open(activate_this) as f:
    code = compile(f.read(), activate_this, 'exec')
    exec(code, dict(__file__=activate_this))
关键是第一行,CGI必须使用正确的Python运行,激活virtualenv是不够的


我发现了一个简短的教程,向您展示了如何测试您是否正确地完成了它:

我在运行Dash/Flask应用程序时遇到了相同的异常。numpy 1.18.2第188行的numy/core/overrides.py中出现异常。只需在应用程序中执行导入numpy即可出现异常。事实上,2.7和3.6的混合导致了我的问题。我被迫使用CGI,我犯了一个错误,用系统默认的Python2.7.5启动CGI,但我的应用程序需要3.6。这可能是OP的问题所在。 以下是我正确的CGI的摘录:

#!/home/main_account/venv36/weather/bin/python
# Python virtualenv must be activated
activate_this = '/home/main_account/venv36/weather/bin/activate_this.py'

with open(activate_this) as f:
    code = compile(f.read(), activate_this, 'exec')
    exec(code, dict(__file__=activate_this))
关键是第一行,CGI必须使用正确的Python运行,激活virtualenv是不够的


我发现了一个简短的教程,向您展示了如何测试您是否正确地完成了它:

您可以分享更多代码吗?第182行是什么?代码中的错误还是Django的错误?你和努比有什么关系?此外,请编辑问题标题,以便人们能够从中理解问题的含义。建议:以错误消息为基础。此外,您使用哪种Python版本?可能是代码期望的内容与您拥有的内容不匹配吗?另外,如何调用此代码以及它打印的回溯是什么?其Django错误,我使用的是python 3.6.7,请包含完整的回溯;我们无法知道您的代码的哪一部分从装饰器内部调用了
numpy
。您的应用程序如何尝试使用numpy?我们需要更多的上下文来告诉你任何有用的东西。你能分享更多的代码吗?第182行是什么?代码中的错误还是Django的错误?你和努比有什么关系?此外,请编辑问题标题,以便人们能够从中理解问题的含义。建议:以错误消息为基础。此外,您使用哪种Python版本?可能是代码期望的内容与您拥有的内容不匹配吗?另外,如何调用此代码以及它打印的回溯是什么?其Django错误,我使用的是python 3.6.7,请包含完整的回溯;我们无法知道您的代码的哪一部分从装饰器内部调用了
numpy
。您的应用程序如何尝试使用numpy?我们需要更多的背景来告诉你任何有用的东西。