a = SomeClass()
if hasattr(a, 'property'):
        a.property
这是检查是否有房产的唯一方法吗?有没有其他方法可以做同样的事情?
您可以使用该属性并捕获AttributeError异常(如果它不存在).但使用hasattr也是一种合理的方法.
捕获异常的一个潜在问题是,您无法轻易区分不存在的属性,并且它已经存在,但是当您调用它时,某些代码会运行并且该代码会引发AttributeError(可能是由于代码中的错误).
您可能还想查看这些相关问题,以获取有关此主题的更多信息:
好吧,你可以尝试访问它并捕获AttributeError以防它不存在.
try:
    a.foo
except AttributeError:
    ...
| 归档时间: | 
 | 
| 查看次数: | 1084 次 | 
| 最近记录: |