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

欢迎关注我的公众号 [极智视界],回复001获取Google编程规范

O_o>_<   o_OO_o~_~o_O

  本文介绍一下 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 脚本方法

你可能感兴趣的:(【编程艺术】python importlib 动态调用 py 脚本方法)