class SomeClass:
def __init__(self,something): #constructor
self.something = something
def some_function(self):
print(self.something)
클래스 구성 장점 :
- 글로벌 변수를 없애고, 모든 변수를 어떠한 스코프에 소속시킨다.
- 몇 번이고 재사용할 수 있다.
- 코드의 수정을 최소화한다.
- 함수 실행중에, 함수 자신을 다시 호출하는 처리 등이 가능하게 하다.
init 이란 :
- 컨스트럭터라고 불리는 초기화를 위한 함수(메소드)
- 인스턴스화를 실시할 때 반드시 처음에 호출되는 특수한 함수
- 오브젝트 생성(인스턴스를 생성)과 관련하여 데이터의 초기를 실시하는 함수
* __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
'기록 > Python' 카테고리의 다른 글
[Python] 파이썬 데이터프레임 열방향 이어 붙이기 concat (0) | 2022.06.28 |
---|---|
[Python] 파이썬 to_csv 한글 깨짐 해결 방법 (0) | 2022.06.28 |
[Python] 파이썬 파일 체크 os.path.isfile 사용 시 주의점 (0) | 2022.06.21 |
[Python] 파이썬 'is None'과 '==None' 차이점 (0) | 2022.06.21 |
[Python] TypeError: unsupported operand type(s) (0) | 2022.06.21 |