python3中的setattr(),getattr(),hasattr(),delattr()

版权声明:https://blog.csdn.net/study_in https://blog.csdn.net/study_in/article/details/86159591

示例:

>>> class Car:
...     def __init__(self):
...             pass
... 
>>> car1 = Car()
>>> car1.color = 'red'
>>> hasattr(car1,'color')
True
>>> hasattr(car1,'colo')
False
>>> getattr(car1,'color')
'red'
>>> getattr(car1,'ssld')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'Car' object has no attribute 'ssld'
>>> setattr(car1,'color','yellow')
>>> getattr(car1,'color')
'yellow'
>>> setattr(car1,'colo','yellow')
>>> getattr(car1,'colo')
'yellow'
>>> delattr(car1,'colo')
>>> hasattr(car1,'colo')
 False

hasattr()函数
hasattr函数用于判断是否包含对应的属性
语法:
hasattr(object,name)函数用于判断是否包含对应的属性
参数: object------对象 name------字符串,属性名
返回值: 如果对象有该属性返回True,否则返回False

getattr()函数
getattr函数用于返回一个对象的属性值
用于返回一个对象的属性值
getattr(object,name,default)
参数 :
object-----对象
name------字符串,对象属性
default ----默认返回值,如果不提供该参数,在没有对象属性时,将触发AttributeError
返回值:
返回对象属性值,如果不存在返回默认值

setattr()函数
setattr函数,用于设置属性值
语法:setattr(object,name,value)
如果name属性存在则修改为value值,如果不存在则设置name属性为value
参数:
object----对象
name------字符串,对象属性
value-----属性值
返回值:

delattr()函数
delattr函数用于删除属性
delattr(car1,‘color’)相当于del car1.color
语法:
setattr(object,name)
如果name属性不存在,则会触发AttributeError
参数:
object —对象
name–必须是对象的属性
返回值:

猜你喜欢

转载自blog.csdn.net/study_in/article/details/86159591
0条评论
添加一条新回复