Как ответил @phd, вы должны импортировать: import plots
.
или вам следует изменить структуру каталогов на:
./ilya_ezplots/__init__.py
И тогда import ilya_ezplots
может сделать трюк.
Имя импорта должно соответствовать родительскому каталогу.
См. этот пост, чтобы сохранить правильную структуру и передовой опыт.
Хорошей практикой является поддержание некоторого пространства имен или того же имени каталога, что и имя вашего пакета, чтобы пользователь не запутался.
если имя вашего проекта xyz
, вам следует сохранить имя каталога как xyz
. Таким образом, использование может сделать import xyz
для импорта вашего пакета и не будет перепутано с другим пакетом. Например, если вы используете yyy
в качестве имени каталога (а имя вашего пакета xyz
), тогда пользователи могут запутаться и установить вместо него пакет yyy
.
Один пример из реальной жизни:
пакету Beautifulsoup требуется import bs4
для его импорта, и поэтому они поддерживают пакет bs4
(фиктивный пакет), чтобы никто не мог создать пакет с именем bs4
, так как это может стать безопасностью. риск.