python简易老虎机小游戏

目标

 利用python制作简易的老虎机小游戏,模块相对简单,美观上,后期还有待提升。

游戏规则:色子,随机生成点数。玩家判断点数是大是小(3-10小,11-18大)。玩家开始玩游戏。如果猜对,赢钱,并显示当前余额多少; 猜错,输钱,并显示当前余额多少。 输完后,显示没钱,游戏结束。

 


语言:python

工具:jupyter


前提准备

1.在终端下载打包工具

代码:pip  install  pyinstaller

2.所需要导入的库

  • pygame
  • radom
  • tkinter

 3.下载音乐,喜欢的歌曲,选择mp3格式,记住路径。


代码实现

import random
import tkinter
import pygame

def play_music():
    pygame.mixer.init()
    pygame.mixer.music.load(r"C:\Users\1\Music\Ice Cube - Why We Thugs.mp3")
    pygame.mixer.music.play()
play_music()
    
window = tkinter.Tk()#先创建空白窗口
window.title("猜大小")#设置一个标题
window.geometry("400x400")#窗口大小

welcome_l = tkinter.Label(window,text="欢迎来到老虎机游戏",bg="gold",fg="black",font=("黑体 12 bold"),width=30,height=3)
welcome_l.grid(column=0, columnspan=2)

var1 = tkinter.StringVar()#tkinter
var1.set("当前账户金额余额1000元")#
balance_l = tkinter.Label(window,textvariable=var1,bg="gold",fg="green",font=("黑体 12 bold"),width=30,height=3)
balance_l.grid(column=0, columnspan=2)

e = tkinter.Entry(window,show=None,font=("黑体",30))
e.grid(column=0, columnspan=2,pady = 18)

var = tkinter.StringVar()
l = tkinter.Label(window,textvariable=var,bg="gold",fg="black",font=("黑体 12 bold"),width=30,height=3)
l.grid(column=0, columnspan=2,pady = 18)



def roll_dice():
    print("开始摇色子")
    points=[]
    for i in range(3):
        point = random.randint(1,6)
        points.append(point)
    return points



#判断点数是大是小(3-10小,11-18大)
def roll_result(total):
    if 11 <= total <= 18:
        return "大"
    else:
        return "小"
 

money = 1000

def big():
    global money
    your_bat = int(e.get())
    if your_bat >money:
        var.set("金额有误,请重新输入!")
    else:
        points = roll_dice()
        total = sum(points)
        if "大" == roll_result(total):
            var.set(f"恭喜你,你赢了{your_bat}元")
            money += your_bat
            var1.set(f"当前账户余额为{money}元")
        else:
            var.set(f"很遗憾,你输了{your_bat}元")
            money -= your_bat
            var1.set(f"当前账户余额为{money}元")
            if money == 0:
                var.set("你输光了")
                var1.set("没钱了")
        
    
def small():
    global money
    your_bat = int(e.get())
    if your_bat >money:
        var.set("金额有误,请重新输入!")
    else:
        points = roll_dice()
        total = sum(points)
        if "小" == roll_result(total):
            var.set(f"恭喜你,你赢了{your_bat}元")
            money += your_bat
            var1.set(f"当前账户余额为{money}元")
        else:
            var.set(f"很遗憾,你输了{your_bat}元")
            money -= your_bat
            var1.set(f"当前账户余额为{money}元")
            if money == 0:
                var.set("你输光了")
                var1.set("没钱了")


b = tkinter.Button(window,text="大",bg="blue",fg="black",font=("黑体 12 bold"),width=15,height=3,command=big)
s = tkinter.Button(window,text="小",bg="blue",fg="black",font=("黑体 12 bold"),width=15,height=3,command=small)
b.grid(row = 6,column=0)
s.grid(row = 6,column=1)

window.mainloop()

封装打包

图标:可以随意上网搜索一张方正图形即可,然后利用ico在线生成图标(直接网页搜索ico就有),将.png图片转换成.ico图片。尺寸适中即可。 生成的图片路径记住,后期将与.py文件放在一起。 如下图所示, 

文件转换:将 .ipynb文件转换成.py文件,转换方式如下file---download as---python(.py)。记住将 图标与.py文件放在相同路径下,才能进行打包。

 

 cd 改变路径,将路径调整到.py文件的路径下。如下图

 

打包成功后,代码地下有显示文件 打包好了的路径在哪,跟着这个路径即可找到。如下图第一行代码所示。成功打包的软件在代码行末尾有successfully。失败的话,也会有代码显示,所以耐心等待打包,不同电脑可能所花费的时间不同。失败原因会有很多种,可以将失败原因复制粘贴,上网查查解决方法。

 


成功

上面打包完以后,在dist文件夹中可以看到一个.exe的软件。这就是我们做好的样子啦。点击运行,就可以开始玩游戏啦。下图就是我做的简易小游戏啦!刚新手上路,不好之处请多多包涵。 

 


 总结

整体难度不大,简易猜大小 小游戏。 

我上传了运行小视频,还在审核中,视频太短,后续能否过审未知,有看到这里的友友可以去看一下。

猜你喜欢

转载自blog.csdn.net/weixin_47314602/article/details/125655775