我是python新手,在模块/包和导入方面遇到了一些问题。我在pyCharm中有一个python项目,这是我的项目结构:
project
|
|------ model (package)
|
|---- __init__.py
|---- impianto.py
|---- componente.py
|---- sorgente.py
|------- app.py
每个模块都定义了一个同名的类,所以impianto.py公司定义一个名为Impianto的类,组件.py定义一个名为Componente的类,依此类推。在应用程序类型我有一个Impianto类的导入。我就是这么做的:
from model.impianto import Impianto
在impianto.py公司我像这样导入组件:
from model.componente import Componente
而且在组件.py我像这样导入Sorgente:
from model.sorgente import Sorgente
请注意,Sorgente扩展了Componente和pyCharm向我建议了导入名称,但是当我运行应用程序类型它给了我这个错误
File "/home/gjcode/PycharmProjects/es3_2016/app.py", line 2, in
<module>
from model.impianto import Impianto
File "/home/gjcode/PycharmProjects/es3_2016/model/impianto.py", line 1, in <module>
from model.componente import Componente
File "/home/gjcode/PycharmProjects/es3_2016/model/componente.py", line 1, in <module>
from model.sorgente import Sorgente
File "/home/gjcode/PycharmProjects/es3_2016/model/sorgente.py", line 1, in <module>
from model.componente import Componente
ImportError: cannot import name 'Componente'
您有循环依赖导入。你试图执行
在两个文件中,
sorgente.py
和impianto.py
尝试从sogrente.py
中删除相关问题 更多 >
编程相关推荐