Python类反射机制使用实例解析
发布时间:2020-12-17 17:34:02 所属栏目:Python 来源:网络整理
导读:这篇文章主要介绍了Python类反射机制使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 反射就是通过字符串的形式,导入模块;通过字符串的形式,去模块寻找指定函数并执行。 Python有四个内
这篇文章主要介绍了Python类反射机制使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 反射就是通过字符串的形式,导入模块;通过字符串的形式,去模块寻找指定函数并执行。 Python有四个内置函数:
示例: class Demo: def __init__(self): self.name = 'abc' def method(self): pass # 实例化 d = Demo() # 获取对象中的属性、方法 name = getattr(d,'name') func = getattr(d,'method') print(name) print(func) print('r') # 查看是否有属性或方法 print(hasattr(d,'name')) print(hasattr(d,'method')) print(hasattr(d,'abc')) # 设置对象的属性值 setattr(d,'name','aaa') # 已有的属性值会修改 setattr(d,'age',10) # 没有该属性会新增并赋值 # 删除对象的属性 delattr(d,'name') 输出结果: abc <bound method Demo.method of <__main__.Demo object at 0x00000000028A27F0>> True True False 反射的使用 demo1: # 导包 time = __import__('time') # 获取方法 sleep = getattr(time,'sleep') # 调用 sleep(5) 等价于: # 1 import time time.sleep(5) # 2 from time import sleep sleep(5) demo2: # 导包 webdriver = __import__('selenium.webdriver',fromlist=['webdriver']) # 实例化,获取方法 driver = webdriver.Chrome() quit = getattr(driver,'quit') # 调用方法 quit() 等价于: from selenium import webdriver driver = webdriver.Chrome() driver.quit() 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |