0
은 내가 SomeClass
초기화 나는이 같은 카운터의 값을 취득 할 때
x = SomeClass()
에 대한 인스턴스 x
을 만들이
class SomeClass:
def doSomething(self):
self.counter = 50
같은 클래스가 속성 : x.counter
내가 얻을 다음 오류 -
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: SomeClass instance has no attribute 'counter'
하지만 멤버 함수를 호출 한 후 x.doSomething()
을 입력 한 다음 데이터 속성을 찾으면됩니다.
>>> x.doSomething()
>>> x.counter
50
왜 이렇게 생겼습니까? 인스턴스가 생성되는 즉시 모든 데이터 속성을 사용할 수 있습니까?
감사합니다.
고마워. 이것을 따르는 것이 좋습니다. 아니면'__init__'에서 모든 데이터 속성을 초기화해야합니까? – bdhar
이전 댓글에서 내 질문에 대한 답변을 수정 한 것 같습니다. 감사. – bdhar
@bdhar : 뭔가 이상한 일을하지 않는 한, 모든 인스턴스 속성을 생성자에서 초기화하도록 권장합니다. –