在Python中,可以使用importlib
模块来实现在运行时动态导入模块。对于要动态导入的模块文件lookup.py,可以按照以下步骤进行动态导入:
importlib.util.spec_from_file_location()
方法创建一个模块规范对象。该方法接受两个参数,第一个参数是模块的名称(可以自定义),第二个参数是lookup.py文件的绝对路径。import importlib.util
module_name = "lookup"
module_path = "/path/to/lookup.py"
spec = importlib.util.spec_from_file_location(module_name, module_path)
importlib.util.module_from_spec()
方法根据模块规范对象创建一个模块对象。module = importlib.util.module_from_spec(spec)
importlib.util.spec.loader.exec_module()
方法执行模块对象,将lookup.py文件中的代码加载到模块对象中。spec.loader.exec_module(module)
module.some_function()
module.SomeClass()
module.some_variable
这样就可以根据条件在运行时动态导入lookup.py文件了。
注意:以上方法适用于Python 3.5及以上版本。如果使用的是Python 3.4及以下版本,可以使用imp
模块的相关方法来实现动态导入。
领取专属 10元无门槛券
手把手带您无忧上云