JeremyJ · 2021年11月23日

【编程艺术】python importlib 动态调用 py 脚本方法

欢迎关注我的公众号 [极智视界]

  本文介绍一下 python importlib 动态调用 py 脚本的方法。

   使用 python 的 importlib.import_module() 方法能够动态加载 py 脚本,并调用里面的方法,这个操作在某些时候非常管用,功能类似 py 脚本里的 import xxx、from xxx import xxx。

   来看一下这个方法怎么使用的。

   假设有如下文件目录树:

- base.py
- model
-- model.py
-- utils
--- utils.py

   其中 utils.py 中的内容有:

args = {'a':1}

class Block:
    def block(self):
        ...

class Neck:
    def neck(self):
        ...

   如上,如果我们想要在 base.py 中调用 utils.py 中的方法,可以如下编写:

## base.py

import importlib

utils = importlib.import_module('model.utils.utils')              # 绝对导入
utils_ = importlib.import_module('.model.utils',package = 'utils')  # 相对导入

# 取出需要的对象
utils.args           # 取出变量

utils.Block          # 取出 class Block
utils.Block.block    # 取出 class Block 中的 block 方法

utils.Neck           # 取出 class Neck
utils.Neck.neck      # 取出 class Neck 中的 neck 方法

   这样就通过 importlib.import_module 达到了在 base.py 中调用 utils.py 里对象的目的。

   以上分享了 python importlib.import_module 的用法,希望我的分享能对你的学习有一点帮助。

【公众号传送】
【编程艺术】python importlib 动态调用 py 脚本方法

推荐阅读
关注数
5
内容数
25
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息