帮我写一个可以选择生成1-5个的5次的双色球python程序,并将1-5的选择做成按钮的模式
时间: 2024-04-16 08:26:35 浏览: 36
以下是一个可以选择生成1-5个双色球号码的Python程序,并将选择做成按钮的模式:
```python
import random
import tkinter as tk
def generate_lottery_numbers():
red_balls = random.sample(range(1, 34), 6)
red_balls.sort()
blue_ball = random.randint(1, 17)
return red_balls, blue_ball
def generate_button_clicked():
num_tickets = num_tickets_var.get()
result_text.delete("1.0", tk.END) # 清空结果文本框
for _ in range(num_tickets):
red_balls, blue_ball = generate_lottery_numbers()
result_text.insert(tk.END, "红色球:")
result_text.insert(tk.END, " ".join(str(ball) for ball in red_balls))
result_text.insert(tk.END, "\n蓝色球:")
result_text.insert(tk.END, str(blue_ball))
result_text.insert(tk.END, "\n\n")
# 创建窗口
window = tk.Tk()
window.title("双色球生成器")
# 创建选择按钮
num_tickets_var = tk.IntVar()
num_tickets_var.set(1)
num_tickets_frame = tk.Frame(window)
num_tickets_frame.pack()
for i in range(1, 6):
button = tk.Radiobutton(num_tickets_frame, text=str(i) + " 张", variable=num_tickets_var, value=i)
button.pack(side=tk.LEFT)
# 创建生成按钮
generate_button = tk.Button(window, text="生成", command=generate_button_clicked)
generate_button.pack()
# 创建结果文本框
result_text = tk.Text(window, height=10, width=40)
result_text.pack()
# 运行窗口
window.mainloop()
```
这个程序使用了 Tkinter 库来创建一个简单的窗口界面。首先,我们定义了一个 `generate_lottery_numbers` 函数,用于生成双色球号码。然后,我们创建了选择按钮,通过 `num_tickets_var` 变量来记录用户选择的购买张数。接下来,我们创建了一个生成按钮,并将其绑定到 `generate_button_clicked` 函数上。在 `generate_button_clicked` 函数中,我们获取用户选择的购买张数,并使用循环生成相应数量的双色球号码,并将结果显示在文本框中。
您可以运行这个程序,选择要生成的双色球号码的数量,然后点击生成按钮,即可在文本框中看到生成的双色球号码。希望这个程序符合您的需求!
阅读全文