Python生成随机数变化窗口,在窗口中添加标签,显示(1,99)的随机数,颜色随机,没0.1秒变化一次,当随机数变到99时结束,并在(10,260)位置显示:出现随机数的个数,字体:楷体,10号字,红色)
时间: 2024-05-16 13:14:54 浏览: 49
Python生成随机数的方法
以下是一个使用Tkinter库实现的Python生成随机数变化窗口的示例代码:
```python
import tkinter as tk
import random
class RandomNumberWindow:
def __init__(self):
self.root = tk.Tk()
self.root.title("随机数变化窗口")
self.root.geometry("400x300")
self.count = 0
self.label = tk.Label(self.root, text="", font=("楷体", 30))
self.label.pack(pady=50)
self.update_label()
self.root.mainloop()
def update_label(self):
number = random.randint(1, 99)
color = "#{:06x}".format(random.randint(0, 0xFFFFFF))
self.label.config(text=str(number), fg=color)
self.count += 1
if number != 99:
self.root.after(100, self.update_label)
else:
count_label = tk.Label(self.root, text="随机数个数:{}".format(self.count), font=("楷体", 10), fg="red")
count_label.place(x=10, y=260)
if __name__ == "__main__":
window = RandomNumberWindow()
```
解释一下代码:
- `tkinter`库提供了创建GUI的功能,我们首先导入了这个库。
- `RandomNumberWindow`类是我们创建的窗口类,包含了窗口的构造方法和一个`update_label`方法,用于更新标签显示的随机数。
- 在构造方法中,我们创建了窗口,设置了标题、大小,定义了一个计数器`count`,以及一个显示随机数的标签`label`。
- `update_label`方法中,我们使用`random.randint`方法生成1到99之间的随机数,并使用`random.randint`方法生成一个随机颜色。然后将生成的随机数和随机颜色设置到标签中,并将计数器加1。
- 如果随机数不等于99,则使用`root.after`方法在0.1秒后调用`update_label`方法,以更新标签的显示。如果随机数等于99,则创建一个新的标签`count_label`,显示随机数的个数,并设置字体、颜色和位置。
- 最后,我们在`__main__`函数中创建了一个`RandomNumberWindow`对象,启动了窗口的显示。
这个示例代码可以在Python 3中运行,并在窗口中显示1到99之间的随机数,颜色也是随机的,每0.1秒变化一次。当随机数变为99时,窗口会停止更新,并在(10, 260)的位置显示随机数的个数。
阅读全文