Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tkinter GUI只工作一次_Python_User Interface_Tkinter - Fatal编程技术网

Python Tkinter GUI只工作一次

Python Tkinter GUI只工作一次,python,user-interface,tkinter,Python,User Interface,Tkinter,大家好,Pythonian的朋友们,我对Tkinter比较陌生,我目前正在开发一个GUI,它允许用户从给定的列表中选择元素,然后按任意给定的顺序排列,并添加任意可选的前缀/后缀。程序在第一次调用时运行良好,但当我尝试第二次调用时,它将无法正确更新 对于创建的类,我的代码如下(我在底部放置了一个可执行部分,以便让您了解我的问题,列表0是任何给定的列表,列表1是我们从第一次调用中获得的,列表2应该是从第二次调用中获得的,如果没有显示此问题): 谢谢大家! 可能不是唯一的问题,因为正如评论中所提到的,

大家好,Pythonian的朋友们,我对Tkinter比较陌生,我目前正在开发一个GUI,它允许用户从给定的列表中选择元素,然后按任意给定的顺序排列,并添加任意可选的前缀/后缀。程序在第一次调用时运行良好,但当我尝试第二次调用时,它将无法正确更新

对于创建的类,我的代码如下(我在底部放置了一个可执行部分,以便让您了解我的问题,列表0是任何给定的列表,列表1是我们从第一次调用中获得的,列表2应该是从第二次调用中获得的,如果没有显示此问题):

谢谢大家!

可能不是唯一的问题,因为正如评论中所提到的,您的示例代码对于该站点的约定太长(例如,请参阅对重要代码段的反馈)

您的代码在python新手中表现出一个常见错误,即使用空列表作为关键字参数的默认值(至少在
getchosenlist
SelecParamOrdered.\uuuu_uu
中)。此空列表在方法的每个调用中共享,因此,它会随时间累积结果。您可以阅读有关的详细说明

您可能想要实现的目标可以与模式一起使用:

def foo(arg = None):
    if arg is None:
        arg = []
    (...)
请读这个:或者读一读
def getchosenlist(listInit=[],listFinal=[], TITLE="Parameter selection", TEXTE="Here, specific instructions"):
    root = TK.Tk()
    app = SelecParamOrdered(root,listInit,listFinal,TITLE,TEXTE)
    root.mainloop()
    return app.sendAll()

if __name__ == '__main__':
    liste_param = []
    for i in range(10):
        liste_param.append('Parameter'+str(i+1))
    print ' List 0:\n',liste_param
    list1 = getchosenlist(liste_param)
    print ' List 1st:\n',list1
    list2 = getchosenlist(liste_param)
    print ' List 2nd:\n',list2
def foo(arg = None):
    if arg is None:
        arg = []
    (...)