본문 바로가기
기록/Python

[Python] 파이썬 init 이란

by 자임 2022. 6. 21.
class SomeClass:
    def __init__(self,something): #constructor
        self.something = something

    def some_function(self):
        print(self.something)

 

클래스 구성 장점 : 

  1. 글로벌 변수를 없애고, 모든 변수를 어떠한 스코프에 소속시킨다.
  2. 몇 번이고 재사용할 수 있다.
  3. 코드의 수정을 최소화한다.
  4. 함수 실행중에, 함수 자신을 다시 호출하는 처리 등이 가능하게 하다.

 


init 이란 :

  1. 컨스트럭터라고 불리는 초기화를 위한 함수(메소드)
  2. 인스턴스화를 실시할 때 반드시 처음에 호출되는 특수한 함수
  3. 오브젝트 생성(인스턴스를 생성)과 관련하여 데이터의 초기를 실시하는 함수

* __init__()은 반드시 첫 번째 인수로 self를 지정해야한다.

 

 

출처 : https://engineer-mole.tistory.com/190






생성자는 init 하나이다.

__init__은 파이썬에서 클래스의 생성자를 만들때 항상 동일한 규칙입니다. __init__을 사용하면 클래스명을 쓰고 옆에 바로 인자들을 채워 넣음으로써 그 값들을 지닌 객체를 만들어 낼 수 있죠.

클래스 선언 할 때는 def average(self)로 선언했는데, 실제로 사용할 때는 self는 빼고 그냥 hgd.average()라고 썼죠. 왜냐하면, 클래스의 함수는 선언할 때 첫번째 인자는 self라고 선언하는 것이 원칙이고, 사용할 때는 self는 무조건 주어지는 것이 파이썬의 원칙이니까 그건 빼고 쓰는거에요.

 

 

출처 : https://www.inflearn.com/questions/4642

 

 

[python] python의 self와 __init__의 이해

※ 일본의 한 포스팅을 번역한 글입니다. 오역 및 직역이 있을 수 있으며, 내용 오류는 댓글로 지적해주심 감사하겠습니다. Python의 클래스에 대한 이해 다른 언어와 동일하게 python에서도 클래스

engineer-mole.tistory.com

 

self나 __init__등 정확히 제대로 제 것으로 만들기가 힘들어요.(이해안가요) - 인프런 | 질문 & 답변

self는 정확히 정의가 무엇이고 예시로 어떻게 쓰이는지 저 혼자 따로self를 이용하여 프로그램을 짜라하면 못만들 것 같아요.그리고 다른 함수들도 다 self들어가 있는데이 self를 안적으면 어떻게

www.inflearn.com