📅  最后修改于: 2020-04-06 09:53:52             🧑  作者: Mango
在编写代码时,可能需要一些特定的模块。因此,我们在Python中使用单行代码导入了这些模块。
但是,如果仅在运行时知道所需模块的名称怎么办?我们如何导入该模块?可以使用Python的内置 __import__()
函数。它还有助于在运行时导入模块。
语法:
__import__(name, globals, locals, fromlist, level)
参数说明:
name : 被导入模块名称
globals and locals : 解释名称
formlist : 要导入的对象或子模块(作为列表)
level : 指定使用绝对导入还是相对导入。默认值为-1(绝对和相对).
范例1:
# 导入 numpy 模块
# 等效于 "import numpy"
np = __import__('numpy', globals(), locals(), [], 0)
# array来自numpy
a = np.array([1, 2, 3])
# 打印类型
print(type(a))
输出:
例子2:
以下两个语句具有相同的含义,并且执行相同的工作。
# from numpy import complex as comp, array as arr
np = __import__('numpy', globals(), locals(), ['complex', 'array'], 0)
comp = np.complex
arr = np.array
应用:
__import__()
在日常的Python编程中并不是必须的。直接使用很少见。但是有时候,当在运行时需要导入模块时,此功能非常方便。