파이썬에서 클래스 내에서 ClassName.class_var
또는 self.class_var
중 하나를 사용하여 클래스 수준 변수를 참조 할 수 있습니다. 이제는 같은 이름의 인스턴스 변수를 생성하여 객체 내의 클래스 수준 변수 이름을 재정의하지 않는 한 (바보 같은 일이 될 수 있음) 항상 동일한 것을 참조하게됩니다.파이썬에서 클래스 변수를 어떻게 참조해야합니까?
제 질문은 더 좋은 습관입니까? 또는 더 일반적인?
어느 쪽이든을 사용하여 코딩 서적과 소스 코드 자체를 볼 수 있습니다. 어떤 경우에는 두 클래스 모두 동일한 클래스 내의 변수를 참조하는 방법을 사용하여 실제로 일관성이없는 것으로 생각합니다. 당신은 단지 하나 개의 클래스가 있고 단지 변수를 읽는다면
class Foo(object) :
class_var = ['same','for','all']
def __init__(self, instance_var) :
self.instance_var = instance_var
def print_words(self) :
# here I could use self.class_var
for w in Foo.class_var :
print w