У меня есть два пакета со структурой, подобной этой:
Package1/calc1.py
Package1/utils.py
Package2/calc2.py
Package2/utils.py
calc1.py выглядит так:
#calc1.py
import utils
...
, а calc2.py выглядит одинаково:
#calc2.py
import utils
...
Также у меня есть основной модуль с файлом main.py. Это начинается так:
import package1.calc1
import package2.calc2
После запуска main.py я получил ошибку:
ImportError: cannot import name 'utils'
Это происходит потому, что когда calc1.py import utils (из Package1), утилиты добавленыкешировать. Поэтому, когда пришло время импортировать утилиты из Package2 с помощью calc2.py, утилиты уже в кеше, и я получил ошибку. Эти утилиты файлы разные, и я не могу их переименовать, они должны иметь одинаковые имена, это важно.
Вопрос такой: есть ли какие-либо возможные способы заставить модули импорта переписать кеш, или, возможно, очистить кеш модуля?