生成一个数字随机抽取的代码,可以设定抽取范围,需要抽取完成以后显示出来,抽取后不再重复抽取要有开始和停止按钮,
时间: 2024-01-01 18:06:40 浏览: 138
jQuery在设定范围随机抽取数字代码.zip
好的,以下是一个简单的Python代码,实现了数字随机抽取的功能,可以设定抽取范围,抽取完成后会显示出来,抽取后不再重复抽取,还有开始和停止按钮:
```python
import random
import tkinter as tk
class RandomNumberPicker:
def __init__(self, start, end):
self.start = start
self.end = end
self.numbers = list(range(start, end+1))
self.pick_history = []
self.root = tk.Tk()
self.root.title("数字随机抽取")
self.label = tk.Label(self.root, text="请点击开始按钮进行抽取", font=("Arial", 20))
self.label.pack(pady=20)
self.start_button = tk.Button(self.root, text="开始", font=("Arial", 16), command=self.start_pick)
self.start_button.pack(pady=10)
self.stop_button = tk.Button(self.root, text="停止", font=("Arial", 16), command=self.stop_pick, state="disabled")
self.stop_button.pack(pady=10)
def start_pick(self):
self.start_button.config(state="disabled")
self.stop_button.config(state="normal")
self.pick_history = []
self.pick()
def pick(self):
if not self.numbers:
self.label.config(text="抽取完成,结果为:" + str(self.pick_history))
self.start_button.config(state="normal")
self.stop_button.config(state="disabled")
return
picked_number = random.choice(self.numbers)
self.pick_history.append(picked_number)
self.numbers.remove(picked_number)
self.label.config(text="已抽取 " + str(len(self.pick_history)) + " 个数字,正在抽取中...")
self.root.after(100, self.pick)
def stop_pick(self):
self.label.config(text="已停止抽取,结果为:" + str(self.pick_history))
self.start_button.config(state="normal")
self.stop_button.config(state="disabled")
def run(self):
self.root.mainloop()
picker = RandomNumberPicker(1, 10)
picker.run()
```
以上代码使用了tkinter库创建了一个简单的GUI界面,包括了开始和停止按钮,可以设定抽取范围,抽取完成后会显示出来,抽取后不再重复抽取。你可以根据自己的需求进行修改和完善。
阅读全文