![](/img/trans.png)
[英]Printing a random instance of a list of class instances but getting a RecursionError python3
[英]Printing random numbers in tkinter (python3)
我想编写单击按钮后从列表中提取随机数的程序。 我已经写了,但是它不像我想要的那样工作。 它在一个数字和另一个数字之间打印。 这样工作。
这是我的代码:
from tkinter import *
import random
def draw(param):
number = Label(root, height=1, width=20, text=param)
return number.pack()
root = Tk()
frame = Frame(root, width=300, height=450)
frame.pack()
numbers = [x for x in range(1,6)]
buttonDraw = Button(frame, text="Draw",
command=lambda: draw(random.choice(numbers)))
buttonDraw.pack()
root.mainloop()
单击按钮后,是否可以用新的随机数替换以前的第一个数?
这是因为您每次按下按钮都会创建新的tkinter.Label
。 在draw
方法之外创建一个tkinter.Label
,仅更改draw
方法中的值。
from tkinter import *
import random
def draw(param):
num.set(param)
root = Tk()
frame = Frame(root, width=300, height=450)
frame.pack()
numbers = [x for x in range(1, 6)]
buttonDraw = Button(frame, text="Draw",
command=lambda: draw(random.choice(numbers)))
buttonDraw.pack()
num = StringVar()
Label(root, height=1, width=20, textvariable=num).pack()
root.mainloop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.