【问题标题】:Pickle output is not readablePickle 输出不可读
【发布时间】:2023-03-07 10:24:01
【问题描述】:

在保存笔记的笔记程序上工作,将每个笔记显示为 tkinter 窗口。将注释保存在腌制文件中,每个腌制对象在单独的窗口上显示为标签。

    global notes
    load_color()
    f = open('m.data', 'rb')
    try:
        while True:
            try:
                notes = pickle.load(f)
            except EOFError:
                break
            root = Tk()
            root.title('Note')
            note_label = Label(root, text=notes, fg=color).pack(side=TOP)
            root.mainloop()
    except EOFError:
        pass

这是在单独的窗口中显示每个对象的功能。显示注释时,每个注释显示如下:

64832376note

颜色显示正确。

不知道为什么会这样。它应该在窗口中显示我作为注释输入的内容。如果这还不够解释,这里是到目前为止的完整代码:https://pastebin.com/6rpeFfED 提前致谢

【问题讨论】:

    标签: python tkinter pickle


    【解决方案1】:

    这是因为note()函数中的note = str(input("Take a note: "))语句会将输入的注释保存到本地变量note中。然后你在dump_notes() 函数中引用note,它实际上是指note() 函数的引用。

    要解决这个问题,最简单的方法是修改dump_notes() 函数以接受参数,例如dump_notes(note),然后将note() 函数中的dump_notes() 更新为dump_notes(note)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-16
      • 2012-09-03
      • 2016-07-14
      • 1970-01-01
      • 2016-12-04
      • 2013-07-31
      • 1970-01-01
      • 2011-01-07
      相关资源
      最近更新 更多