Я новичок в python и столкнулся с некоторыми проблемами с модулем / пакетами и импортом.У меня есть проект на python в pyCharm, это структура моего проекта:
project
|
|------ model (package)
|
|---- __init__.py
|---- impianto.py
|---- componente.py
|---- sorgente.py
|------- app.py
каждый модуль определяет класс с тем же именем, поэтому impianto.py определяет класс с именем Impianto, componentente.py определяет класс с именемКомпонент и тд.В app.py у меня есть импорт для класса Impianto.Вот что я делаю:
from model.impianto import Impianto
в impianto.py Я импортирую Componente следующим образом:
from model.componente import Componente
, а в componentente.py я импортирую Sorgente следующим образом:
from model.sorgente import Sorgente
обратите внимание, что Sorgente расширяет Componente, и pyCharm предложил мне имена для импорта, но когда я запускаю app.py, он выдает эту ошибку
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'