Back to questions
Junior — Middle
62
Почему в Python рекомендуется реализовывать метод __str__ и какова его задача?
Answer from AI
sobes.tech AI
Метод __str__ в Python отвечает за строковое представление объекта, которое удобно читать человеку. Его реализация позволяет при вызове print(obj) или str(obj) получать понятное и информативное описание объекта.
Если __str__ не реализован, Python использует метод __repr__, который часто менее читаем.
Пример:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"Person(name={self.name}, age={self.age})"
p = Person("Иван", 30)
print(p) # Выведет: Person(name=Иван, age=30)
Таким образом, __str__ улучшает удобство отладки и взаимодействия с объектами.