1、给定一个文件结构,在main.py中于运用importlib 导入a.py运行其中的show()方法

├── clazz
│ ├── __init__.py
│ ├── a.py
│ └── b.py
└── main.py

a.py 的代码

def show():
print("show A")

importlib模块支持传入字符串来引入一个模块,我们可以将show()的路径传入importlib从而达到执行的效果

方法一:
import importlib
a=importlib.import_module("clazz.a")#将模块路径作为参数传入importlib
a.show()
方法二:
#将方法show一并写入路径,通过spilt进行分割
improt importlib
path='clazz.a.show'
cls_path,classname=path.rsplit('.',maxsplit=1)#通过右分割'.'的方式得到cls_path 和执行函数名
cls=importlib.import_module(cls_path)
cls_obj=getattr(cls,classname)#反射得到对象
cls_obj()#直接运行得到运行结果

最新文章

  1. 解决安装rpm包依赖关系的烦恼 - yum工具介绍及本地源配置方法
  2. H5学习系列之Audio和Video
  3. Java中的ReentrantLock和synchronized两种锁定机制的对比
  4. Perl 的面向对象编程
  5. RequireJS源码初探
  6. android OOM分析工具LeakCanary
  7. Arduino 4X3键盘 AD模拟分量实现
  8. C语言变参函数/Variadic fucntion
  9. Android开发 解决AlertDialog中的EditText无法调出输入法的问题
  10. winform托盘时,要运行一个实例,解决办法
  11. Android学习总结——获取被启动的Activity传回的数据
  12. linux命令——scp
  13. iOS 开发者必不可少的 75 个工具
  14. Linux lsof命令详解和使用示例【转】
  15. 【企业级框架整合】Springmvc+mybatis+restful+bootstrap框架整合
  16. POJ 2342 Anniversary party / HDU 1520 Anniversary party / URAL 1039 Anniversary party(树型动态规划)
  17. 'IFileDialog' : no GUID has been associated with this object
  18. python re模块findall()详解
  19. 使用fiddler模拟重复请求接口
  20. Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码

热门文章

  1. maven+jenkins发布环境
  2. shell脚本调试技巧
  3. 卸载gitlab
  4. gitlab用户添加ssh免密钥认证后clone还是要求输入密码
  5. mybatis-动态sql2
  6. python时间转换 ticks-FYI
  7. Ajax的学习记录
  8. Javascript笔记部分
  9. AngularJS 历经实例
  10. 前端小记3——iOS与Android问题