标签:-- def pre sel self res name python面向对 pytho
1.反射包含四个函数hasattr(),getattr(),setattr(),delattr()class test(object):
def __init__(self):
self.name=‘张三‘
def show(self):
print(‘姓名:%s‘%self.name)
T=test()
print(hasattr(T,‘show‘))
print(hasattr(T,‘name‘))
print(hasattr(T,‘name1‘))
>>:
True
True
False
3.getattr(o,name)根据name字符串取得对应类中的属性或方法
class test(object):
def __init__(self):
self.name=‘张三‘
def show(self):
print(‘姓名:%s‘%self.name)
T=test()
res=getattr(T,‘show‘)
res()
>>:
姓名:张三
4.setattr(o,name,value)设置类的属性值
class test(object):
def __init__(self):
self.name=‘张三‘
def show(self):
print(‘姓名:%s‘%self.name)
T=test()
setattr(T,‘name‘,‘李四‘)
print(T.name)
>>:
李四
5.delattr(o,name)删除类的属性或方法
class test(object):
def __init__(self):
self.name=‘张三‘
def show(self):
print(‘姓名:%s‘%self.name)
T=test()
delattr(T,‘name‘)
print(T.name)
>>:
报错
标签:-- def pre sel self res name python面向对 pytho
原文地址:http://blog.51cto.com/13803166/2130052