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