728x90
반응형
__str__ 메서드는 파이썬의 특별 메서드(special method) 중 하나로 파이썬의 객체를 문자열로 표현할 때 호출되며, 파이썬 문법에 속합니다. 예를 들어, 사람(Person) 클래스를 정의하고, 그 객체가 출력될 때 어떻게 보일지를 __str__ 메서드를 통해 정의할 수 있습니다.
예시: Person 클래스
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name}, {self.age} years old"
# Person 객체 생성
person = Person("Alice", 30)
# Person 객체를 출력
print(person) # Alice, 30 years old 출력
코드 설명:
- Person 클래스는 name과 age라는 두 속성을 가집니다.
- __str__(self) 메서드는 객체가 출력되거나 문자열로 변환될 때, name과 age를 포함한 문자열을 반환합니다.
- print(person)을 하면, __str__ 메서드가 호출되어 **"Alice, 30 years old"**라는 문자열이 출력됩니다.
__str__ 메서드가 없을 경우:
만약 __str__ 메서드를 정의하지 않으면, print(person)은 사람이 이해하기 어려운 기본 객체 정보 (예: <__main__.Person object at 0x7ff...> 같은 형식)만 출력하게 됩니다.
즉, __str__ 메서드를 사용하면 객체를 사람이 읽기 쉽게 정의할 수 있어, 디버깅이나 로깅할 때 객체의 상태를 보다 쉽게 파악할 수 있습니다.
'Category > Python' 카테고리의 다른 글
| Python 가상 환경이란? (1) | 2024.09.16 |
|---|---|
| RotatingFileHandler란? (0) | 2024.09.16 |
| pip란? (0) | 2024.09.10 |
| pip를 최신 버전으로 업그레이드하려면? (0) | 2024.09.10 |
| 파이썬 가상 환경 만들기(cmd 창) (0) | 2024.09.10 |