Python:反射getattr\setattr\hasattr\delattr
2021/11/14 22:14:22
本文主要是介绍Python:反射getattr\setattr\hasattr\delattr,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
# 问题:什么时候用类方法 # 反射,提供更加灵活的方式去实现去对象中操作成员 # getattr\setattr\hasattr\delattr class Person(object): def __init__(self, name, age): self.name = name self.age = age def show(self): message = '{}_{}'.format(self.name, self.age) obj = Person('张学友', 28) v1 = getattr(obj, 'name') # 获取成员,可以在成员名称后加None,如果不存在则返回None print(v1) # 张学友 v2 = setattr(obj, 'area', '香港') # 设置新成员 print(obj.area) # 香港 v3 = hasattr(obj, 'area') # 判断是否存在 print(v3) # True delattr(obj, 'age') # 删除成员 print(obj.age) # 报错 # import module + 反射,最小导入模块级别 from importlib import import_module import requests.exceptions m = import_module('random') # 等价import random v1 = m.randint(1, 100) # 等价于random.randint(1,100) print(v1) from requests.exceptions import InvalidURL m = import_module('requests.exceptions.InvalidURL') # 会报错 n = import_module('requests.exceptions') # 正确做法 l = n.InvalidURL
这篇关于Python:反射getattr\setattr\hasattr\delattr的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-08有遇到过吗?同样的规则 Excel 中 比Python 结果大
- 2024-03-30开始python成长之路
- 2024-03-29python optparse
- 2024-03-29python map 函数
- 2024-03-20invalid format specifier python
- 2024-03-18pool.map python
- 2024-03-18threads in python
- 2024-03-14python Ai 应用开发基础训练,字符串,字典,文件
- 2024-03-13id3 algorithm python
- 2024-03-13sum array elements python