>  기사  >  백엔드 개발  >  다음은 제공된 기사 콘텐츠에 맞게 조정된 몇 가지 질문 기반 제목입니다. 옵션 1(차별성에 초점): * Python은 클래스 변수와 인스턴스 변수를 어떻게 구별합니까? 고르다

다음은 제공된 기사 콘텐츠에 맞게 조정된 몇 가지 질문 기반 제목입니다. 옵션 1(차별성에 초점): * Python은 클래스 변수와 인스턴스 변수를 어떻게 구별합니까? 고르다

Linda Hamilton
Linda Hamilton원래의
2024-10-26 01:01:28726검색

Here are a few question-based titles, tailored to your provided article content:

Option 1 (Focus on Distinction):

* How Does Python Differentiate Between Class Variables and Instance Variables?

Option 2 (Focus on Accessibility):

* When Do Python Objec

Python 클래스 및 인스턴스 변수 이해

Python에서 클래스에서 생성된 객체는 클래스 변수와 인스턴스 변수라는 두 가지 유형의 변수를 가질 수 있습니다. . 클래스 변수는 클래스의 모든 인스턴스에서 공유되는 반면, 인스턴스 변수는 각 인스턴스마다 고유합니다.

클래스 변수

클래스 변수는 __init__ 메서드 외부에서 정의됩니다. 클래스 이름 뒤에 점과 변수 이름을 사용하여 선언됩니다. 예:

<code class="python">class MyClass:
    class_variable = 100</code>

MyClass의 모든 인스턴스는 class_variable에 액세스할 수 있습니다.

인스턴스 변수

인스턴스 변수는 __init__ 내에 정의됩니다. 방법. self 키워드와 변수 이름을 사용하여 선언됩니다. 예를 들면 다음과 같습니다.

<code class="python">class MyClass:
    def __init__(self):
        self.instance_variable = 200</code>

MyClass의 각 인스턴스에는 고유한 instance_variable이 있습니다.

설명의 예

질문에 언급된 예와 관련하여 :

  • 첫 번째 예에서 list는 __init__ 메서드 외부의 클래스 변수로 정의됩니다. 따라서 testClass의 모든 인스턴스에서 공유됩니다. p.list와 f.list를 호출하면 동일한 클래스 변수에 액세스하게 됩니다.
  • 두 번째 예에서 list는 __init__ 메서드 내에 정의됩니다. 따라서 인스턴스 변수입니다. p.list 및 f.list를 호출하면 각각 고유한 항목이 추가된 다양한 인스턴스 변수에 액세스하게 됩니다.

고급 예

다음 예는 보다 복잡한 시나리오를 보여줍니다.

<code class="python">class MyClass:
    class_variable = ['foo']
    
    def __init__(self):
        self.instance_variable = ['bar']</code>

이 예에서 class_variable은 클래스 변수이고, instance_variable은 인스턴스 변수입니다. x.list에 액세스하면 'thing'을 포함하도록 수정된 인스턴스 변수에 액세스하게 됩니다. testClass.list에 액세스하면 수정되지 않은 상태로 유지되는 클래스 변수에 액세스하게 됩니다.

위 내용은 다음은 제공된 기사 콘텐츠에 맞게 조정된 몇 가지 질문 기반 제목입니다. 옵션 1(차별성에 초점): * Python은 클래스 변수와 인스턴스 변수를 어떻게 구별합니까? 고르다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.