欢迎光临散文网 会员登陆 & 注册

Python 动态导入对象,importlib.import_module()使用

2023-06-10 23:34 作者:青阳小栈  | 我要投稿

背景

一个函数运行需要根据不同项目的配置,动态导入对应的配置文件运行。

解决

文件结构

a #文件夹

│a.py

│__init__.py

b #文件夹

│b.py

│__init__.py

├─c#文件夹

│c.py

│__init__.py


# c.py 中内容

args = {'a':1}


class C:

    

    def c(self):

        pass


向a模块中导入c.py 中的对象

解决方案

a.py


import importlib

params = importlib.import_module('b.c.c') #绝对导入

params_ = importlib.import_module('.c.c',package='b') #相对导入

# 对象中取出需要的对象

params.args #取出变量

params.C  #取出class C

params.C.c  #取出class C 中的c 方法


Python 动态导入对象,importlib.import_module()使用的评论 (共 条)

分享到微博请遵守国家法律