Hiện đang cố gắng làm việc trong Python3 và sử dụng nhập khẩu tuyệt đối để nhập một mô-đun vào một mô-đun khác nhưng tôi gặp lỗi ModuleNotFoundError: No module named '__main__.moduleB'; '__main__' is not a package
. Xem xét cấu trúc dự án này:ModuleNotFoundError: Không có mô-đun có tên '__main __. Xxxx'; '__main__' không phải là gói
proj
__init__.py3 (empty)
moduleA.py3
moduleB.py3
moduleA.py3
from .moduleB import ModuleB
ModuleB.hello()
moduleB.py3
class ModuleB:
def hello():
print("hello world")
Sau đó chạy python3 moduleA.py3
cung cấp cho các lỗi. Những gì cần phải được thay đổi ở đây?
Cảm ơn bạn!
Hàng đầu '.' chỉ hoạt động theo cách bạn muốn khi tệp nằm trong gói. – anonymoose
@anonymoose là "proj" không phải là một gói? vì nó có __init __. py3? – mpseligson
Bạn không thể sử dụng hàng đầu '.' trong nhập khẩu và có nó làm việc theo cách bạn muốn nó khi bạn đang chạy các tập tin trực tiếp với Python. Bạn phải nhập tệp. Nếu bạn đặt một tập tin khác bên ngoài 'proj' có' import moduleA' trong nó, tôi tin rằng bạn sẽ thấy đầu ra mà bạn mong đợi. – anonymoose