Skip to main content
 首页 » 编程设计

python for 循环无法正常工作

2025年05月04日10powertoolsteam

class Note: 
 
    note_number = 1 
 
    def __init__(self, title="", memo="", id="", tag=""): 
 
        self.memo = memo 
        self.id = id 
        self.number= Note.note_number 
        Note.note_number += 1 
 
    def __str__(self): 
 
        return self.memo 
 
class NoteBook: 
 
 
    def __init__(self): 
        self.note_book = [] 
 
    def add_note(self, *args): 
            self.note_book.extend(args) 
 
    def print(self): 
        for note in self.note_book: 
            print(note) 
 
n1 = Note(memo = "I love chemistry") 
n2 = Note("I hate chemistry") 
n3 = Note("Inorganic") 
notebook1 = NoteBook() 
notebook1.add_note(n1, n2, n3) 
notebook1.print() 

我创建了 3 个笔记对象并使用 add_note() 函数将它们添加到笔记本对象中,笔记本对象是一个列表。如果我用 print(notebook1) 打印笔记本,它会在列表中正确显示 3 个项目。当我尝试使用 print() 函数时,它应该遍历列表并打印每个音符的 str 我只得到第一个音符“我喜欢化学”而不是其他 2注意为什么会这样?

I love chemistry 

请您参考如下方法:

如果你想让它打印备忘录——你应该用备忘录创建笔记:

改变:

n1 = Note(memo = "I love chemistry") 
n2 = Note("I hate chemistry") 
n3 = Note("Inorganic") 

到:

n1 = Note(memo = "I love chemistry") 
n2 = Note(memo = "I hate chemistry") 
n3 = Note(memo = "Inorganic")