Python 如何使用从另一个类获取的值刷新/重新初始化一个类?

Python 如何使用从另一个类获取的值刷新/重新初始化一个类?,python,tkinter,Python,Tkinter,因此,问题的标题大致概括了这一点。如果我有太多的信息,我会提前道歉,因为我不知道问题发生的确切位置,但问题是在类起始页和类第一页之间的过渡中。我基本上想从第一个按钮获取文本(我稍后会添加更多)并从名称与按钮文本匹配的文件中获取数据。然后,这些数据将添加到PageOne中的for循环中。然而,尽管函数transition() 如果以后要调用,则需要将数据添加代码移动到单独的方法中。\uuuu init\uuuu方法中的内容在创建实例时执行,以后不再执行 class PageOne(tk.Frame

因此,问题的标题大致概括了这一点。如果我有太多的信息,我会提前道歉,因为我不知道问题发生的确切位置,但问题是在
类起始页
类第一页之间的过渡中。
我基本上想从
第一个按钮
获取文本(我稍后会添加更多)并从名称与按钮文本匹配的文件中获取数据。然后,这些数据将添加到
PageOne
中的for循环中。然而,尽管函数
transition()


如果以后要调用,则需要将数据添加代码移动到单独的方法中。
\uuuu init\uuuu
方法中的内容在创建实例时执行,以后不再执行

class PageOne(tk.Frame):
    print("PageOne initialised")
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)
        self.f1=tk.Frame(self, width="1300", height="200", bd=6, relief="raise")
        self.f1.pack()
        label = tk.Label(self.f1, text="Title2")
        label.pack(pady=10, padx=10)

        button1 = tk.Button(self, text="Back to Home",
                                 command=lambda: controller.show_frame(startPage))
        button1.pack()
    
    def add_data(self):
        for d in variables.data1:
            sld_label= tk.Label(self.f1, text= d.givename() + "\n" + d.givedet())
            sld_label.pack()
完成后,可以从另一个类调用该方法,如下所示:

def transition(self,controller,source):
    data1,data2=lasdata(source)
    variables.data1=data1
    variables.data2=data2
    controller.frames[PageOne].add_data() # update the other page
    controller.show_frame(PageOne)

我对python非常陌生,因此如果问题格式错误或不实用,请原谅。我建议您从阅读以下答案中链接的一些答案开始:非常感谢
controller.frames[PageOne].add_data()
def transition(self,controller,source):
    data1,data2=lasdata(source)
    variables.data1=data1
    variables.data2=data2
    controller.frames[PageOne].add_data() # update the other page
    controller.show_frame(PageOne)