__str__ и список
У меня есть класс:
class MyClass():
def __init__(self, n):
self.n = n
def __str__(self):
return str(self.n)
и список arr, в котором лежат экземпляры класса:
arr = [MyClass(0), MyClass(1)]
как сделать так чтобы при print(arr) выводилось:
['0', '1']
а не:
[<__main__.MyClass object at 0xebeb3dc0>, <__main__.MyClass object at 0xebdcb580>]
полный код:
class MyClass():
def __init__(self, n):
self.n = n
def __str__(self):
return str(self.n)
arr = [MyClass(0), MyClass(1)]
print(arr)
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Добавьте реализацию специального метода __repr__:
def __repr__(self):
return str(self.n)