아래 코드는 'foo' 속성이 클래스 A와 B에서 정의 또는 파생되었는지 여부를 보여줍니다.
예시
class A: foo = 1 class B(A): pass print A.__dict__ #We see that the attribute foo is there in __dict__ of class A. So foo is defined in class A. print hasattr(A, 'foo') #We see that class A has the attribute but it is defined. print B.__dict__ #We see that the attribute foo is not there in __dict__ of class B. So foo is not defined in class B print hasattr(B, 'foo') #We see that class B has the attribute but it is derived
출력
{'__module__': '__main__', 'foo': 1, '__doc__': None} True {'__module__': '__main__', '__doc__': None} True