특별 메서드는 내가 구현한 객체가 다음과 같은 기본적인 언어 구조체를 구현하고
지원하고 사용할수 있게 해준다
- 반복
- 컬렉션
- 속성 접근
- 연산자 오버로딩
- 함수 및 메서드 호출
- 객체 생성 및 제거
- 문자열 표현 및 포맷
- 블록 등 콘텍스트 관리
특별 메서드에 대해서 참고해볼 수 있는 __getitem__ 메서드
- 슬라이싱을 쉽게할 수 있도록 도와준다
https://jinmay.github.io/2019/11/26/python/python-instance-slice/
특별 메서드는 어떻게 사용되나?
특별 메서드는 파이썬 인터프리터가 메서드를 호출하기 위해 사용되는 것임.
일반적으로 우리가 코드에서 특별 메서드를 직접 호출하는 경우는 많지 않음
우리가 자주 사용하는 특별 메서드는
__init( ) 함수
특별 메서드를 호출해야되는 경우는 일반적으로 len( ) , iter( ), str( ) 등 관련된 내장 함수를 호출하는 것이 좋다.
이러한 내장함수가 해당 특별 메서드를 호출하때문..
문자열 표현 메서드
- __repr__( ), __str__( ) 등이 존재
자주 사용되는 특별 메서드 중 하나인 str( ) 과 repr( ) 의 차이점 공부
수리 표현 메서드
- __add__( ), __mul( )__ 등이 존재
__add__( ) 는 ' + ' 연산자
__mul( )__ 은 ' * ' 연산자
사용자 정의형의 불리언 값
파이썬에도 bool 형은 존재하지만, if 나 while 문, 혹은 and, or, not 에 대한 피연산자로서 bool 형이 필요한 곳에 어떠한 객채라도 사용 가능
참, 거짓을 판단하기 위해 bool(x) 를 적용하며, 이 함수는 항상 True, False 를 반환
bool(x) 는 x.__bool__( ) 을 호출한 결과를 이용.
x.__bool__( )을 구현되지 않을 시, x.__len( )__ 을 호출하여 이 매서드가 0을 반환하면 False, 그렇지 않으면 True 반환
특별 메서드 개요
'Book > 전문가를 위한 파이썬' 카테고리의 다른 글
[전문가를 위한 파이썬] Chapter 5. 일급함수 (0) | 2020.11.01 |
---|