我有模塊的列表,像這樣:
modules = ['ModuleA', 'ModuleB', 'ModuleC']
用於模塊駐留在每個的.py在我已經添加到包含路徑的子目錄中。我正在尋找的是一種加載模塊並構建對所述加載模塊的引用列表的方式。
我有模塊的列表,像這樣:
modules = ['ModuleA', 'ModuleB', 'ModuleC']
用於模塊駐留在每個的.py在我已經添加到包含路徑的子目錄中。我正在尋找的是一種加載模塊並構建對所述加載模塊的引用列表的方式。
這應該回答你的問題:
references = map(__import__, modules)
或者如果你喜歡字典,模塊的名稱作爲關鍵字:
references = dict(zip(modules, map(__import__, modules)))
是否回答你的問題?
import importlib
imports = {}
for i in modules:
imports[i] = importlib.import_module(i)
小心ImportError
s。
不錯的解決方案,但僅適用於3.1(如[在文檔中聲明](http://docs.python.org/dev/library/importlib.html#module-importlib))。 – Tadeck 2011-12-28 05:32:19
很好用的地圖。 – 2011-12-28 06:09:07