Моя структура каталогов:
test.py
module/
importer.py
importee.py
__init__.py
Итак, в моем каталоге у меня есть test.py, затем другой каталог, который был инициализирован как модуль. В этом модуле есть файл importer.py, который импортирует файл importee.py. Чтобы проверить, работает ли импорт, я сделал простую функцию в importee.py и попытался использовать ее в importer.py (т.е. я запустил importer.py напрямую); это работало просто отлично.
Но когда я захожу в test.py и получаю оператор импорта from module import *
и пытаюсь запустить его (без какого-либо другого кода), выдается ошибка, которая прослеживается до оператора импорта в importer.py, говоря: No module named 'importee'
Если это имеет значение, __init__.py
в каталоге module
имеет правильно заданную функцию __all__
.
Мне нравится думать, что это не дубликат, несмотря на наличие постов с таким же названием, таких как this или this или this или this ; Я искал часы и до сих пор не знаю, что может быть причиной этого.
Есть идеи? Любая помощь с благодарностью.
Редактировать: содержимое четырех файлов:
init.py
__ all __ = ["importee", "importer"]
importee.py
def example():
print("hey")
importer.py
from importee import *
example()
test.py
from module import *
Когда я запускаю importer.py, я не получаю ошибок, но когда я запускаю test.py, я получаю ошибку, которая прослеживается до первой строки importer.py, говоря, что No module named 'importee' found
, даже если я этого не получаю ошибка при прямом запуске importer.py ...