如何使用hasattr
(或不使用)检查函数或方法中的attr存在?
当我尝试以任何方式检查它是否为假时:
>>> def f():
at = True
>>> hasattr(f, 'at')
False
>>> hasattr(f(), 'at')
False
答案 0 :(得分:5)
局部变量不是属性。你不能使用任何*attr()
来欺骗他们。
答案 1 :(得分:0)
它应该有效,请看下面的例子。
>>> def f():
... f.at = True
...
>>> hasattr(f, 'at')
False
>>> f()
>>> hasattr(f, 'at')
True