为什么这并不像人们天真地期望的那样工作呢?
class Foo(object):
def __init__(self):
self.bar = 3
def __bool__(self):
return self.bar > 10
foo = Foo()
if foo:
print 'x'
else:
print 'y'
(输出为x
)
https://stackoverflow.com/questions/8205558
复制相似问题