Python小游戏 ---- 猜数字

305 阅读2分钟

本文已参与[新人创作礼]活动,一起开启掘金创作之路。

为了使广大的python爱好者来到这个学习的旅馆!接下来的小游戏是希望我能够在未来看到这笔记时,能够充满兴趣,重新系统的来学习Python的GUI模块。

python小游戏 ---- 恭喜中奖游戏

效果视频

菜鸡小建议:

代码使用

对半取数,能更快更科学的找到你心中的那个数哦!

代码改进

1.有能力的大佬,也可修改修改,找到适合自己的最优!比如添加一点背景音乐,可以在猜中的时候,能播放; 2.增加猜数字的难度,如增加猜数的次数限制,数字范围扩大; 3.增加猜数字的趣味,增加道具,如锦囊,次数增加等; 4.引入其他模块,增加技术底层的实力。

代码具体如下:

# -*- coding:utf-8 -*-
"""
作者: catgod007
日期: 2021年07月24日
"""
from tkinter import *
import random
import re

verstion = 1.0

targetnum = random.randint(1,1024)
minnum = 1
maxnum = 1024
count = 0

def guess():
    global minnum,maxnum,count
    if inputVar.get() and re.match(r"\d",inputVar.get()):# 验证是否是数字且不是空。
        guessnum = int(inputVar.get())
        if minnum <= guessnum <= maxnum:
            count += 1
            if guessnum == targetnum:
                msVar.set("恭喜你猜对了,它是 %d ,共猜了%d次。" % (targetnum,count))
            elif guessnum < targetnum:
                minnum = guessnum
                msVar.set("小了,请输入%d-%d之间的数字。" % (minnum,maxnum))
            else:
                maxnum = guessnum
                msVar.set("大了,请输入%d-%d之间的数字。" % (minnum,maxnum))
        else:
            msVar.set("猜数字的范围是%d-%d" % (minnum,maxnum))
    else:
        msVar.set('请输入正确的数字')

root = Tk()
root.title('猜数字v{}'.format(verstion))
root.geometry('800x600')

msVar = StringVar()
msVar.set('请输入你要猜的数字(1-1024):')
valueLabel = Label(root,textvariable=msVar,font='楷体 24 normal',height=3)
valueLabel.pack(pady=10)
# 提醒词

inputVar = StringVar()
inputentry = Entry(root,textvariable=inputVar,font='楷体 18 normal')
inputentry.pack(pady=5)
# 文本框

guessbutton = Button(root,text='猜',command=guess,width=10,cursor='hand2')
guessbutton.pack()
# 按钮

25.jpg

感谢大家的支持,关注,白嫖,评论!