动态加载模块,python反射机制

Python011

动态加载模块,python反射机制,第1张

动态加载模块用的模块importlib 里面的import_module(“字符串模块路径”, 相对路径包名)

2.getattr(对象,“字符串属性”,默认值)

补充

任意创建一个文件夹,在里面同级创建f1-f4.py的四个文件。

内容如下:

f1.py

f2.py

f3.py

f4.py

f5.py

f4.py:通过动态导入模块,动态添加属性 删除。可以解决接口自动化中的动态传参

F5.py: 通过传参的方式,去获取类的实例方法,可以做到不知道需要哪个方法的时候,用字符串的方法去调用需要的方法。接口自动化中参数化的时候可以用到。

反射机制,当通过类名去反射得到的实例方法,需要传类名进去。通过self或者对象得到的实例方法,不需要传self或者类名。如果是实例对象或者类 去调用静态方法, 都不用给函数传self cls

python是一种广泛使用的具有动态语义的解释型,面向对象的高级编程语言

Python是一种面向对象的高级编程语言,具有集成的动态语义,主要用于Web和应用程序开发。它在快速应用程序开发领域极具吸引力,因为它提供动态类型和动态绑定选项。

Python是一种解释型语言,这意味着用Python编写的程序不需要事先编译就可以运行,从而可以轻松地测试小段代码并使用Python编写的代码更容易在平台之间移动。

Python相对简单,因此它易于学习,因为它需要一种专注于可读性的独特语法。开发人员可以比其他语言更轻松地阅读和翻译Python代码。反过来,这降低了程序维护和开发的成本,因为它允许团队协作工作而没有重大的语言和经验障碍。

Python支持使用模块和包,这意味着程序可以以模块化的方式设计,代码可以在各种项目中重用。一旦您开发了所需的模块或软件包,就可以对其进行扩展以便在其他项目中使用,并且可以轻松导入或导出这些模块。