Python __import__() 函数是一个内置函数,用于在运行时导入模块。应该注意的是,通常不鼓励使用此函数,因为它可能会更改 import 语句的语义。
在我们的 Python 程序中,我们需要来自其他模块的各种函数和类。虽然我们也可以在代码的开头导入命名模块,但有时,我们可能只需要该模块来临时用于几行代码。在这种情况下,我们使用 __import__() 函数。
语法
以下是 Python __import__() 函数的语法 -
__import__(name, globals, locals, fromlist, level)
参数
Python __import__() 函数接受以下参数 -
- name − 它表示我们要在程序中导入的模块的名称。
- globals − 它指定如何解释指定的模块。
- locals − 它还指定如何解释导入的模块。
- fromlist − 此参数指定我们要作为列表导入的对象或子模块。
- level − 级别 0 表示绝对级别,正数表示相对级别。
返回值
Python __import__() 函数返回我们指定的对象或模块。
__import__() 函数示例
练习以下示例来理解 Python 中 __import__() 函数的用法:
示例:使用 __import__() 函数
以下示例显示了 Python __import__() 函数的基本用法。在这里,我们将一个名为 “math” 的模块导入到我们的程序中。
#importing the module
importingModule = __import__("math")
# using sqrt method from the module
print(importingModule.sqrt(49))
当我们运行上述程序时,它会产生以下结果——
7.0
示例:在运行时使用 __import__() 调用模块的特定方法
我们还可以从给定的模块中选择特定的方法以导入到我们的程序中。在下面的代码中,我们只从 Math 模块导入 sqrt() 方法。
#importing only sqrt method from Math module
importingSqrt = getattr(__import__("math"), "sqrt")
print("The square root of given number:")
print(importingSqrt(121))
以下是上述代码的输出 -
The square root of given number:
11.0
11.0
示例:使用 __import__() 函数导入带有别名的模块
下面的代码演示了如何通过为其提供别名来导入 numpy 模块。
#importing only numpy module
np = __import__('numpy', globals(), locals(), [], 0)
print("The newly created array:")
print(np.array([22, 24, 26, 28, 30, 32]))
上述代码的输出如下 -
The newly created array:
[22 24 26 28 30 32]
[22 24 26 28 30 32]