python - 无法导入模块python ImportError

标签 python importerror flask-restful

我有一个具有这种结构的项目(仅显示受影响的项目):

main.py # starting script
/app
  |__init__.py
  |/exceptions
    | __init__.py # content: from .ex400 import *
    | base.py
    | ex400.py # content: some classes extending classes from base.py
  |/extend
    | __init__.py # empty
    | module.py

/app/extend/module.py,我尝试从 /app/exceptions/ex400.py 导入类。我从 main 导入了 module.py

模块.py

# I added this to check the path, output is below
import sys
print 'Working directory =>', sys.path

from app.exceptions.ex400 import SomeClass, MoreClass

# ... some code here ofcourse

在运行时,我得到了一个ImportError

Working directory => ['/prj/myproject', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages']

...
File "/prj/myproject/app/extend/module.py", line 5, in <module>
   from app.exceptions.ex400 import SomeClass, MoreClass
ImportError: No module named exceptions.ex400

我是不是漏掉了什么?

最佳答案

是的,你错过了一些东西。它只是一些小东西,但无论如何用 Python 导入是一个痛苦的事情。例如,您的 app 文件夹中没有 __init__.py。那应该可以解决您的问题。顺便说一句,不要对命名空间等感到困惑。我只是将__init__.py 留在您的exceptions 文件夹中为空。

干杯

关于python - 无法导入模块python ImportError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36373588/

相关文章:

python - 在cygwin错误上安装tensorflow

python - psycopg2 无法插入特定列

python - 将 UniProt txt 文件编译成字典以检索键 (ID) 和值 (MOD_RES)

python - 在 Python 中并行运行多个外部命令

python - 为什么 google.protobuf 的导入在 ipython 中可以正常工作,但在 python 中却不行?

python - TFTPy 导入,没有名为 tftpy 的模块

Python Flask-Restful 应用程序与 Kubernetes - 连接被拒绝

python - 除了 GET、PUT、POST、DELETE 之外的 Flask-RESTful 自定义路由

python - parse_args 似乎不理解 json 参数

scikit-learn - ImportError:无法导入名称 '_print_elapsed_time'