>백엔드 개발 >파이썬 튜토리얼 >Python에서 __init__의 역할 소개

Python에서 __init__의 역할 소개

巴扎黑
巴扎黑원래의
2017-09-04 11:34:262814검색

파이썬에 이상한 이름의 함수인 __init__이 있는 것을 봤습니다. 밑줄 친 함수가 자동으로 실행된다는 것은 알지만, 그 존재의 구체적인 의미는 모르겠습니다..

오늘 774c1f36f7841e49f82f7910127133b4> 11장 객체 지향 프로그래밍에서는 다음과 같이 소개합니다. "C++/Java/C# 프로그래머를 위한 참고 사항

Python의 모든 클래스 멤버(데이터 멤버 포함)는 공용이며 모든 메서드가 유효합니다.

단 한 가지 예외가 있습니다: __privatevar와 같이 이중 밑줄이 앞에 붙은 데이터 멤버 이름을 사용하는 경우 Python의 이름 관리 시스템은 이를 효과적으로 개인 변수로 처리합니다. 클래스나 객체에서는 단일 밑줄이 앞에 붙어야 합니다. 다른 이름은 공개로 처리되며 다른 클래스/객체에서 사용할 수 있습니다. 이는 단지 규칙일 뿐이며 Python에서는 필요하지 않습니다(이중 밑줄과 달리).

마찬가지로 __del__ 메소드의 개념이 소멸자의 개념과 유사하다는 점에 유의하세요. "

갑자기 __init__이 클래스에서 생성자로 사용되며 고정된 방식으로 작성되는 것 같습니다. 매우 엄격하지만 실제로는 의미가 있습니다

def __init__(self, name):
    '''Initializes the person's data.'''
    self.name = name
    print '(Initializing %s)' % self.name
    # When this person is created, he/she
    # adds to the population
    Person.population += 1

name 변수는 객체에 속하므로(self를 사용하여 할당됨) 객체의 변수입니다.

self.name의 값은 객체별로 지정됩니다. 객체의 변수로서의 성격을 나타내는 기초입니다.

위 내용은 Python에서 __init__의 역할 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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