ReżPython: jak zaimportować ze wszystkich modułów w katalogu? Struktura
main.py
my_modules/
module1.py
module2.py
module1.py:
class fooBar():
....
class pew_pew_FooBarr()
....
...
Jak mogę dodać wszystkich klas z modułu * do głównej bez przedrostków (tj z nich korzystać jak foo = fooBar(), a nie foo = moje_modules.module1.fooBar()).
Oczywistym decyzja jest napisać w main.py coś takiego:
from my_modules.module1 import *
from my_modules.module2 import *
from my_modules.module3 import *
...
Ale nie chcę zmienić main.py gdy tworzę nowy moduleN. Czy istnieje rozwiązanie?
Wiem, że importowanie takich klas nie jest dobrym pomysłem, ale wciąż jestem ciekawy.
UPD: To pytanie różni się od tego Loading all modules in a folder in Python, ponieważ moim problemem jest ładowanie modułów bez przestrzeni nazw.
Czy masz na myśli import modułu dynamicznego w pythonie http://stackoverflow.com/questions/301134/dynamic-module-import-in-python? – rahul
Import modułu dynamicznego jest dla mnie dość złożonym rozwiązaniem. – ov7a