本文介绍了hasattr()与try-except块来处理不存在的属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
if hasattr(obj, 'attribute'):
# do somthing
VS
try:
# access obj.attribute
except AttributeError, e:
# deal with AttributeError
这应该是preferred为什么?
Which should be preferred and why?
推荐答案
hasattr
内部,并迅速执行相同的任务尝试/除
块:这是一个非常具体的,优化的,一个任务的工具,因此应该是preferred,在适用时,到非常通用的替代
hasattr
internally and rapidly performs the same task as the try/except
block: it's a very specific, optimized, one-task tool and thus should be preferred, when applicable, to the very general-purpose alternative.
这篇关于hasattr()与try-except块来处理不存在的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!