🎈 博主:一只程序猿子
🎈 博客主页:一只程序猿子 博客主页
🎈 个人介绍:爱好(bushi)编程!
🎈 创作不易:如喜欢麻烦您点个👍或者点个⭐!
🎈 欢迎访问我的主页(点我直达)
🎈 除此之外您还可以通过个人名片联系我
如果您很喜欢我的文章且富有,我说:公主 or 王子 请打赏!!!
目录
1.前言
2.相关库介绍
(1) Rondom库:
(2) Tkinter库:
3.源码
4.演示运行
1.前言
6+1号码生成通过随机抽取6个红色数字和1个蓝色数字的方式产生号码。在本文中,我将介绍如何使用Python及相关库实现一个带有图形用户界面的6+1号码生成器。
2.相关库介绍
(1) Rondom库:
Random库是Python的标准库,用于生成随机数。它主要基于梅森旋转算法生成伪随机数序列。random库主要用于生成随机数,其中包括一系列常用的随机数生成函数。例如,seed()函数用于初始化随机数生成器,random()函数用于生成[0.0, 1.0]之间的随机小数,getrandbits(k)函数用于生成k比特长的随机整数等。还有一些扩展的随机函数,如randint()、getrandbits()、uniform()、randrange()、choice()、shuffle()等。
(2) Tkinter库:
Tkinter是Python的标准GUI库,它是Python接口的TK GUI工具包的标准Python接口,采用模块化设计。这个模块包含了许多GUI控件,例如:按钮、标签、文本框和滚动条等。Tkinter是跨平台的GUI库,适用于Windows、Mac OS X和Linux等操作系统,它还是Python中使用最广泛的GUI库。
此外,对于初学者来说,Tkinter是相当容易上手的。而且由于它作为Python自带库,无需额外下载就可以直接使用。
3.源码
import random
import tkinter as tkdef lotteryNumber():# 红球red_ball = [] # 定义一个list用来存储红色球号码blue_ball = [] # 定义一个list用来存储蓝色球号码# 循环生成红色球号码,循环结束前生成蓝色球号码for i in range(6):# 把生成的红色球号码添加进listred_ball.append(random.randint(1,33))if i == 5:# 把生成的蓝色球号码添加进listblue_ball.append(random.randint(1,16))print(f"红色球: {red_ball}")print(f"蓝色球: {blue_ball}")red_result_label.config(text=f"红色球: {red_ball}")blue_result_label.config(text=f"蓝色球: {blue_ball}")if __name__ == '__main__':# 创建一个Tkinter窗口,这是所有GUI应用程序的根元素root = tk.Tk()# 设置窗口大小width = 400height = 200# 获取屏幕宽度和高度screen_width = root.winfo_screenwidth()screen_height = root.winfo_screenheight()# 计算窗口的初始位置,使其在屏幕居中显示x_position = int((screen_width - width) / 2)y_position = int((screen_height - height) / 2)# 设置窗口的初始位置和大小root.geometry(f"{width}x{height}+{x_position}+{y_position}")# 设置窗口的标题,这将显示在窗口的左上角root.title("6+1号码生成器")# 创建一个字体样式对象,这里设置了一种12磅的粗体字体font_style = ("TkDefaultFont", 12, "bold")# 创建一个框架,框架是用来组织和布局小部件(如按钮、标签等)的容器frame1 = tk.Frame(root)# 将框架添加到主窗口中frame1.pack()generation_button = tk.Button(root, text="生成号码", command=lotteryNumber)# 通过config方法设置按钮的样式,"height"和"width"参数用于设置按钮的高度和宽度,"bg"和"fg"参数用于设置按钮的背景色和前景色(文字颜色)generation_button.config(font=font_style, height=2, width=18, bg="#1E90FF", fg='white')# 将按钮添加到主窗口中,"pady"参数用于设置垂直填充(间距)generation_button.pack(pady=10)frame2 = tk.Frame(root)frame2.pack()red_result_label = tk.Label(frame2, text="红色球号码")red_result_label.config(font=font_style, relief=tk.GROOVE, height=3, width=38, anchor='w', fg='red')red_result_label.pack()blue_result_label = tk.Label(frame2, text="蓝色球号码")blue_result_label.config(font=font_style, relief=tk.GROOVE, height=3, width=38, anchor='w', fg='blue')blue_result_label.pack()# 运行主窗口root.mainloop()
4.演示运行
运行程序:
点击生成号码:
同时控制台也有输出:
注意:本文章仅供学习交流!