알다시피, 파이썬에는 객체에 대한 부울 값이 있습니다. 클래스에 __len__
메소드가있는 경우 __len__()
이 발생하는 모든 인스턴스는 부울 False
으로 평가됩니다 (예 : 빈 목록).파이썬에서 객체의 부울 값
실제로 모든 반복 가능한 빈 사용자 정의 객체는 부울 식으로 표시되는 경우 False
으로 평가됩니다.
이제 bar
속성의 클래스 foo
이 있다고 가정합니다. 어떻게 진리 값을 정의 할 수 있습니까? 그렇다면 그렇지 않으면 True if bar % 2 == 0
과 False
으로 평가 될 것입니다. 예를 들어
:
myfoo = foo()
myfoo.bar = 3
def a(myfoo):
if foo:
print "spam"
else:
print "eggs"
그래서, a(myfoo)
는 "eggs"
를 인쇄해야합니다.
도 참조하십시오 :'__nonzero __()' –