如何知道对象在Python中是否具有属性?

我们可以使用hasattr()函数来查找python对象obj是否具有某些属性。 

hasattr(obj,'attribute'):

python中的约定是,如果该属性可能存在,只需调用它并使用try / except块捕获它即可。如果该属性可能不存在或不确定,则使用hasattr可能是一个更好的选择。

以下代码显示了如何检查foo类是否具有属性“ a”。

示例

class foo:
    a = 54
    def bar(self):
        pass
if hasattr(foo, 'a'):
   print foo.a
else:
   print 'No such attribute'

输出结果

54