Встречается на собеседованиях • сегодня

В чем разница между __str__ и __repr__ в Python

__str__ и __repr__ — это методы для строкового представления объектов в Python.

  • __str__ — предназначен для «красивого» вывода, ориентирован на пользователя. Используется в print() и str().
  • __repr__ — формальное строковое представление объекта, часто используется для отладки. Должен быть однозначным и, по возможности, позволяющим воссоздать объект (eval(repr(obj))).

Пример:

python
class Example:
    def __init__(self, value):
        self.value = value

    def __str__(self):
        return f"Example: {self.value}"

    def __repr__(self):
        return f"Example(value={self.value})"

obj = Example(42)
print(str(obj))    # "Example: 42"  
print(repr(obj))   # "Example(value=42)"  

Если __str__ не определён, Python использует __repr__ как fallback.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы