2024-10-01 05:00:57 发布
网友
如果我有一本字典dict,我想检查dict['key'],我可以在try块中这样做(bleh!)或者使用get()方法,使用False作为默认值。
dict
dict['key']
try
get()
False
我想为object.attribute做同样的事情。也就是说,如果还没有设置对象,我已经有了要返回False的对象,但是这样会产生如下错误
object.attribute
AttributeError: 'bool' object has no attribute 'attribute'
与dict.get(key, default)相比,hasattr更直接的类似物是getattr。
dict.get(key, default)
hasattr
getattr
val = getattr(obj, 'attr_to_check', default_value)
(其中default_value是可选的,如果找不到,则对no属性引发异常。)
default_value
对于您的示例,您将通过False。
你是说hasattr()也许吧?
hasattr()
hasattr(object, "attribute name") #Returns True or False
Python.org doc - Built in functions - hasattr()
你也可以这样做,这是有点混乱,不适用于方法。
"attribute" in obj.__dict__
为了检查一个键是否在字典中,您可以使用in:'key' in dictionary。
in
'key' in dictionary
要检查对象中的属性,请使用hasattr()函数:hasattr(obj, 'attribute')
hasattr(obj, 'attribute')
与
dict.get(key, default)
相比,hasattr
更直接的类似物是getattr
。(其中
default_value
是可选的,如果找不到,则对no属性引发异常。)对于您的示例,您将通过
False
。你是说
hasattr()
也许吧?Python.org doc - Built in functions - hasattr()
你也可以这样做,这是有点混乱,不适用于方法。
为了检查一个键是否在字典中,您可以使用
in
:'key' in dictionary
。要检查对象中的属性,请使用
hasattr()
函数:hasattr(obj, 'attribute')
相关问题 更多 >
编程相关推荐