Python 动态导入模块

Posted ihoneysec

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 动态导入模块相关的知识,希望对你有一定的参考价值。

动态导入模块

 

目录结构:

zhangsandeMacBook-Air:1110 zhangsan$ tree .
.
├── lib
│   └── aa.py
├── test1.py

  

lib目录下有一个aa.py文件,其中C类中有一个属性name: 

class C:
    def __init__(self):
        self.name = ‘zhangsan‘ 

 

在test1.py文件中需要动态导入aa这个模块有两种办法:

第一种:

lib = __import__(‘lib.aa‘)
obj = lib.aa.C()
print(obj.name)

  输出结果:

zhangsan

 

使用python __import__ 内置方法

 

第二种(官方推荐的方法):

import importlib
libaa = importlib.import_module(‘lib.aa‘)
obj = libaa.C()
print(obj.name)

  输出结果:

zhangsan

 

使用pythonlib模块的import_module()方法 

以上是关于Python 动态导入模块的主要内容,如果未能解决你的问题,请参考以下文章

Python Importlib.import_module动态导入模块

Python importlib(动态导入模块)

python中动态导入模块

Python30 动态导入模块/断言

python笔记73-动态导入模块import_module 和 重载reload

python 动态模块导入