728x90
007. str과 repr 차이
__str__과 __repr__
배우던 도중 퀘스쳔 마크가 뜬 것과 위의 둘이 관련이 있어서 찾아찾아보게되었다
사실 이 글을 쓰는 지금도 정확히 파이썬에서 어떻게 어우려서 작동하는지 완전히 이해하지 못했다
앞으로도 계속 배울꺼지만 일단 잊지않게 복습해둔다
간단하게 둘은 메소드(method)이며,
__str__ : 사람이 보기(인식) 쉽게 출력하는 방법 // 객체의 비공식적 문자열 출력
__repr__ : 컴퓨터가 인식할 수 있게 출력하는 방법 // 객체의 공식적 문자열 출력
주피터를 쓰면서 변수명을 그냥 적으면 print()를 쓰지 않아도 결과값이 출력이 되는데
위의 이미지처럼 결과 값이 다르다
그래서 다시 한번 관심을 갖게 되었는데 이번에 새로 알게 된 것은,
변수명만 선언한 것이 __repr__이고, 주피터에서 자동으로 이렇게 한다고 한다.
print() 함수를 사용한게 __str__이다.
datetime 모듈을 써보다가 __repr__ 과 __str__의 출력 차이가 모듈에서 이렇게 날 줄 몰랐다...ㄷㄷ
차차 더 깊은 이해를 위해 나올 때마다 찾아보고 물어봐야겠다
아직은 찾아보다가 이해도 다 안되고 번아웃 될 것 같아서 패스
*프로그램에서 편의를 위해 자동적으로 이것저것 해주는 것만큼 왜 그런지 작동 원리를 알고,
더 내 수족처럼 사용할 수 있게 정진해야겠다!!!
728x90
반응형
'Python > review of learning' 카테고리의 다른 글
[Python] 009. while문 - 가진 물품수에서 판매될시 차감 및 소진시 (0) | 2021.08.17 |
---|---|
[Python] 008. 초기값 지정의 의미 (0) | 2021.08.17 |
[Python] 006. 조건문 - 조건부 표현식 if문 (0) | 2021.08.17 |
[Python] 005. 조건문 - 조건부 표현식 if문 (0) | 2021.08.17 |
[Python] 004. 연산자 in (Membership Operators) (0) | 2021.08.17 |