如何让Tkinter Listbox按集合定义的顺序插入元素?
解决方法
问题出在你用了Python的集合(set),集合是无序的数据结构,遍历它的时候不会遵循你定义时的顺序,所以没法保证项的插入顺序符合预期。
要实现按指定顺序插入,只需要把words从集合改成**列表(list)**即可,列表是有序的,会严格保留你定义时的元素顺序:
gui_dict = tk.Listbox(third_task_window, width=10, height=10) # 把大括号改成方括号,将集合改为列表 words = ['damp', 'camp', 'came', 'lame', 'lime', 'like', 'cold', 'card', 'cord', 'corm', 'worm', 'warm'] for word in words: gui_dict.insert(tk.END, word)
这样遍历words时就会按照你定义的'damp'→'camp'→'came'...的顺序依次插入到Listbox中。
内容的提问来源于stack exchange,提问作者Reboot
相关产品推荐
相关产品推荐

