[英]from . import [module] -> ImportError: cannot import name [module]
当尝试在python 3.4中导入我的模块时,我得到:
In [6]: import PyModLSM
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-6-9980d6d1561d> in <module>()
----> 1 import PyModLSM
/home/naught101/Documents/uni/phd/projects/ModularLSM/PyModLSM/PyModLSM/__init__.py in <module>()
11 sys.exit()
12
---> 13 from . import handlers
14 from . import models
15 from . import constants
ImportError: cannot import name 'handlers'
目录结构为:
├── LICENSE.md
├── PyModLSM
│ ├── component.py
│ ├── constants.py
│ ├── data.py
│ ├── functions.py
│ ├── handlers.py
│ ├── __init__.py
│ ├── models.py
│ └── science_functions.py
├── README.md
└── setup.py
据我所知,没有循环进口:
$ grep -irH "from.*import" PyModLSM/*py
PyModLSM/functions.py: from .handlers import ModelHandler
PyModLSM/handlers.py:from .component import ModelComponent
PyModLSM/__init__.py:from . import handlers
PyModLSM/__init__.py:from . import models
PyModLSM/__init__.py:from . import constants
PyModLSM/__init__.py:from . import science_functions
PyModLSM/__init__.py:from .functions import *
PyModLSM/models.py:from .component import ModelComponent
PyModLSM/models.py:from . import science_functions as sf
PyModLSM/science_functions.py:from . import constants as c
自从我升级到python 3.4(使用conda)以来,这种情况已经开始发生-我以前使用的是python 3.3,或者可能是3.2,并且运行正常。
感叹..好的,这是由于缺少必需的模块引起的,该模块同时已安装并导入。 Python拒绝导入处理程序,因为以前缺少该模型。 重新启动Python可使导入正常继续。
不知道是否应该删除此问题,还是不确定其他人是否也做同样的事情。
你认识到错误行
PyModLSM / models.py:from .component导入ModelComponent
大概应该是
来自。 组件导入ModelComponent
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.