Ответ 1
Относительный импорт работает только для пакетов, но при импорте в extended.py
вместо этого выполняется модуль верхнего уровня.
В текущем каталоге может храниться файл __init__.py
, но он еще не делает часть exended.py
пакета.
Чтобы что-то считалось пакетом, вам нужно вместо этого импортировать имя каталога. Было бы выполнено следующее:
main.py
packagename\
__init__.py
basic.py
extended.py
затем в main.py
поместите:
import packagename.extended
и только затем extended
часть пакета и работа с относительным импортом.
Относительный импорт теперь имеет что-то относительное, родитель packagename
.