如何打印存储在数组中的属性而不是对象



如何打印出存储在数组中的chaptername的属性,而不是它的对象?

class Book:
def __init__(self):
self._chapters = []
def addchapter(self, chapter):
self._chapters.append(chapter)
def getchapters(self):
#How do I print out ["First", "Second", "Third"] instead?
print(self._chapters) #<- prints out [<__main__.Chapter object at 0x10b849c40>, <__main__.Chapter object at 0x10b8901f0>, <__main__.Chapter object at 0x10b890310>]

class Chapter:
def __init__(self, chaptername):
self._chaptername = chaptername
def __str__(self):
return f"{self._chaptername}"

b = Book()
b.addchapter( Chapter("First") )
b.addchapter( Chapter("Second") )
b.addchapter( Chapter("Third") )
b.getchapters() 

我是python的新手,所以我不确定如何实现这一点,如果有人能帮我,我将不胜感激!谢谢

您想要覆盖__repr__而不是__str__

最新更新