Чем отличаются str и repr ?
Спросят с вероятностью 14%
Функции str() и repr() используются для получения строкового представления объектов, но они служат разным целям и работают по-разному.
Функция str()
Предназначена для получения "приятного" строкового представления объекта, которое может быть представлено пользователю. Она старается сделать строку более читабельной и понятной. Если метод
Функция repr()
Предназначена для получения официального строкового представления объекта, которое может быть использовано для воссоздания того же объекта при помощи интерпретатора.
Основные отличия
✅Цель:
✅Вывод:
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 207 вопроса на Data Scientist. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
Спросят с вероятностью 14%
Функции str() и repr() используются для получения строкового представления объектов, но они служат разным целям и работают по-разному.
Функция str()
Предназначена для получения "приятного" строкового представления объекта, которое может быть представлено пользователю. Она старается сделать строку более читабельной и понятной. Если метод
__str__()
не определен в классе объекта, использует метод __repr__()
как запасной вариант.class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name}, возраст {self.age} лет"
person = Person("Иван", 30)
print(str(person)) # Вывод: Иван, возраст 30 лет
Функция repr()
Предназначена для получения официального строкового представления объекта, которое может быть использовано для воссоздания того же объекта при помощи интерпретатора.
repr()
должна быть максимально точной и содержать информацию о всех атрибутах объекта. Результат repr()
часто используется для отладки и разработки, так как он дает больше деталей о объекте.class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return f"Person('{self.name}', {self.age})"
person = Person("Иван", 30)
print(repr(person)) # Вывод: Person('Иван', 30)
Основные отличия
✅Цель:
str()
используется для удобочитаемого представления объекта, а repr()
— для точного и однозначного представления, часто с целью отладки или журналирования.✅Вывод:
str()
старается быть читабельным; repr()
— точным и полным, позволяя воссоздать объект при помощи его вывода в интерпретаторе Python.str()
делает описание объекта понятным и красивым для людей. repr()
делает описание точным и полным, чтобы программисты могли понять все детали объекта или даже воссоздать объект по этому описанию.👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 207 вопроса на Data Scientist. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых