Різниця між __str__ та __repr__
Обидва магічні методи
Обидва магічні методи
__str__
та __repr__
використовуються для отримання рядкового представлення об’єкта. Давайте розберемося, в чому різниця між ними.
class Complex:
def __init__(self, real, imag):
self.real = real
self.imag = imag
def __repr__(self):
return f'Complex({self.real), {self.imag})'
def __str__(self):
return f'{self.real} + {self.imag}i'
t = Complex(10, 20)
print(t)
# Output: 10 + 20i
print([t, 1, 2])
# Output: [Complex(10, 20), 1, 2]
Функція print()
та вбудована функція str()
використовують метод __str__
для відображення рядкового представлення об’єкта, а вбудована функція repr()
— метод __repr__
.
#str #repr // #theory // Python