Курс Python → Методы __repr__ и __str__ в Python
Метод __repr__ в Python позволяет определять строковое представление объекта, которое предназначено для программиста и удобно при использовании во время отладки. Этот метод возвращает строку, которая должна содержать информацию о состоянии объекта, такую как его тип и значения его атрибутов. Это помогает программисту лучше понять, как устроен объект и что в нем содержится.
С другой стороны, метод __str__ позволяет определять понятное пользователю строковое представление объекта, которое можно отображать в интерфейсе программы. Этот метод используется, когда объект неявно преобразуется в строку, например, при вызове функции print() или при использовании объекта в форматированных строках.
Например, предположим, у нас есть класс Person, который имеет атрибуты name и age. Мы можем определить метод __repr__, который вернет строку с информацией об объекте, и метод __str__, который вернет строку, удобную для отображения пользователю:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return f'Person(name={self.name}, age={self.age})'
def __str__(self):
return f'{self.name} is {self.age} years old'
Теперь, если мы создадим объект класса Person и выведем его с помощью функции print(), мы увидим результат, определенный методом __str__, а если мы выведем объект напрямую, мы увидим результат, определенный методом __repr__:
person = Person('Alice', 30)
print(person) # Вывод: Alice is 30 years old
person # Вывод: Person(name=Alice, age=30)
Другие уроки курса "Python"
- Логические значения в Python
- Оператор is в Python
- Эффективная конкатенация строк с использованием join()
- Применение промокода в Много лосося
- Идентификатор объекта в Python
- Проверка вхождения подстроки
- Аннотации типов в Python
- Функция eval() в Python
- Циклы в Python
- Подсчет частотности элементов в Python
- Красивый вывод списка
- Работа с *args и **kwargs в Python
- Работа с итераторами в Python
- Выбор редактора кода.
- Регистрация на курсы SF Education
- Атрибуты массивов в Numpy
- Справка по импортированным модулям
- Мониторинг работы программы Py-spy
- Docstring в Python
- Значения по умолчанию в Python
- Удаление элемента из списка в Python
- Использование super() в Python
- Логирование с Logzero
- Замена элементов в списке с помощью генераторов списков
- Использование функции product
- Перетасовка списков в Python
- Форматирование строк с f-строками
- Определение индекса элемента списка
- Введение в Python
- Метод join() для объединения элементов
- Поиск HTML-элементов с BeautifulSoup
- Установка User-Agent в Python
- Преобразование данных в Python
- Генерация UUID в Python
- Настройка нарезки списков
- Оператор обр. импликации
- Поиск повторов в списке
- Реализация метода __abs__ в Python
- Работа с файлами в Python
- Метод ne для сравнения объектов
- Безопасный доступ к значениям словаря
- Сравнение неупорядоченных списков
- Поиск частого элемента
- Константы в модуле cmath
- Хеши в Python
- Оптимизация памяти с __slots__
- Поиск всех индексов подстроки
- JMESPath в Python















