Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 클래스 __init__() 함수 내부와 외부의 변수를 설명합니다.

<시간/>

클래스 변수 대 인스턴스 변수

파이썬에서 클래스 __init__ 함수 외부의 모든 변수는 클래스 변수이고 내부 변수는 인스턴스 변수입니다. 아래 코드를 살펴보면 클래스 변수와 인스턴스 변수의 차이점을 더 잘 이해할 수 있습니다.

예시

class MyClass:
    stat_elem = 456
    def __init__(self):
        self.object_elem = 789
c1 = MyClass()
c2 = MyClass()
# Initial values of both elements
>>> print c1.stat_elem, c1.object_elem
456 789
>>> print c2.stat_elem, c2.object_elem
456 789
# Let's try changing the static element
MyClass.static_elem = 888
>>> print c1.stat_elem, c1.object_elem
888 789
>>> print c2.stat_elem, c2.object_elem
888 789
# Now, let's try changing the object element
c1.object_elem = 777
>>> print c1.stat_elem, c1.object_elem
888 777
>>> print c2.stat_elem, c2.object_elem
888 789