在编程运行时,你如何动态向包中添加 Python 模块?
要动态导入 Python 模块,您可以使用 importlib 包的 import_module(moduleName) 函数。您需要将 moduleName 设置为字符串。例如,
>>> from importlib import import_module >>> moduleName = "os" >>> globals()[moduleName] = import_module(moduleName)
如果您想动态导入模块列表,您甚至可以从 for 循环调用它。例如,
>>> import importlib >>> modnames = ["os", "sys", "math"] >>> for lib in modnames: ... globals()[lib] = importlib.import_module(lib)
globals() 调用返回一个辞书。我们可以将每个库的 lib 键设置为在导入模块时返回给我们的对象。
如果您已导入一个包,并且现在想要动态导入其某个模块,您仍然可以使用相同的函数并获得预期的结果。您想导入的模块应具有其完整名称,而不仅仅是模块名称。例如,
>>> import importlib >>> pack = 'datetime' >>> mod = 'date' >>> globals()[pack] = importlib.import_module(pack) >>> globals()[pack + '.' + mod] = importlib.import_module(pack + '.' + mod)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP