Tôi biết tôi đang cập nhật một bài viết khá cũ và tôi đã thử sử dụng automodinit
, nhưng phát hiện ra quá trình thiết lập của nó bị hỏng đối với python3. Vì vậy, dựa trên câu trả lời của Luca, tôi đã đưa ra một câu trả lời đơn giản hơn - có thể không hoạt động với .zip - cho vấn đề này, vì vậy tôi nghĩ rằng tôi nên chia sẻ nó ở đây:
trong __init__.py
mô-đun từ yourpackage
:
#!/usr/bin/env python
import os, pkgutil
__all__ = list(module for _, module, _ in pkgutil.iter_modules([os.path.dirname(__file__)]))
và trong một gói khác dưới đây yourpackage
:
from yourpackage import *
Sau đó, bạn sẽ có tất cả các mô-đun được đặt trong gói được tải và nếu bạn viết một mô-đun mới, nó cũng sẽ được nhập tự động. Tất nhiên, sử dụng những thứ đó một cách cẩn thận, với sức mạnh lớn đi kèm với trách nhiệm lớn.