Знам, че актуализирам доста стара публикация и се опитах да използвам automodinit
, но разбрах, че процесът на настройка е повреден за python3. И така, въз основа на отговора на Лука, измислих по-прост отговор - който може да не работи с .zip - на този проблем, така че реших, че трябва да го споделя тук:
в рамките на модула __init__.py
от yourpackage
:
#!/usr/bin/env python
import os, pkgutil
__all__ = list(module for _, module, _ in pkgutil.iter_modules([os.path.dirname(__file__)]))
и в друг пакет под yourpackage
:
from yourpackage import *
След това ще имате заредени всички модули, които са поставени в пакета, и ако напишете нов модул, той също ще бъде автоматично импортиран. Разбира се, използвайте този вид неща внимателно, с големите правомощия идват и големи отговорности.
person
zmo
schedule
26.03.2016