Python 如何使用tkinter在窗口中显示值?

Python 如何使用tkinter在窗口中显示值?,python,random,tkinter,Python,Random,Tkinter,在给定代码中,如何在接口而不是终端中获得结果?我希望random.choice结果显示在表中 import random import tkinter, sys from tkinter import * lista = ['Kamil Winnicki', 'Wiktor Jasiński', 'Adam Turowski', 'Arek Major', 'Dominik Piechotka', 'Jakub Laskowski', 'Jakub Materak', 'K

在给定代码中,如何在接口而不是终端中获得结果?我希望
random.choice
结果显示在表中

import random
import tkinter, sys
from tkinter import *

lista = ['Kamil Winnicki', 'Wiktor Jasiński', 'Adam Turowski', 'Arek Major', 
         'Dominik Piechotka', 'Jakub Laskowski', 'Jakub Materak', 'Kacper Kołodziejski', 
         'Kamil Stankiewicz', 'Konrad Nosek', 'Krzysiek Wawszczak', 'Andrzej Oplebsiak', 
         'Miłosz Tarucin', 'Paweł Pawłowski', 'Mateusz Lebioda']

def koniec():
    sys.exit()

def losowanie():
    print(random.choice(lista))

main = tkinter.Tk()

#nagłowek
te = tkinter.Label(main, text = 'Lista 1T:')
te.pack()

#Wyswietla liste 1T
listbox = Listbox(main)
listbox.insert(1, '1. Mateusz Lebioda', '2. Jakub Laskowski', '3. Kamil Winnicki', 
                  '4. Wiktor Jasiński', '5. Adam Turowski', '6. Arek Major', 
                  '7. Dominik Piechotka', '8. Jakub Materak', '9. Kacper Kołodziejski', 
                  '10. Kamil Stankiewicz', '11. Konrad Nosek', '12. Krzysiek Wawszczak', 
                  '13. Andrzej Oplebsiak', '14. Miłosz Tarucin', '15. Paweł Pawłowski')
listbox.pack()
#losuje
y = tkinter.Button(main, text = 'losuj', command = losowanie)
y.pack()

#wyjscie z aplikacji
x = tkinter.Button(main, text = 'Zakoncz', command = koniec)
x.pack()

main.mainloop()

一种方法是显示一个带有选项的对话框

import tkinter.messagebox as messagebox

def losowanie():
    messagebox.showinfo(message=random.choice(lista))

如果我正确理解了问题,您需要将
random.choice(lista)
的结果附加到listbox元素,这可以通过以下代码实现:

def losowanie():
    listbox.insert(END, str(listbox.size() + 1) + ". " + random.choice(lista))

就像Dan Dev建议的那样,您可以这样做,但也可以去掉该函数

这将执行您想要执行的操作,但没有函数
losowaine

y = tkinter.Button(main, text = 'losuj', command = lambda : 
                listbox.insert(END, str(listbox.size() + 1) + ". " + random.choice(lista)))  
下面的代码将在表的末尾插入随机选项(使用函数
losowanie


是否希望它显示在同一帧上?清除框架中的所有内容,然后只打印随机选择?
 def losowanie():
    listbox.insert(END, (random.choice(lista)))