使用python做一个玩数字炸弹的游戏_沈扬茗老师的博客

天天见闻 天天见闻 2022-03-05 游戏 阅读: 605
摘要: 使用python3,数字炸弹游戏规则:在一个数字范围内,有一个数字作为炸弹,谁猜中这个炸弹就被惩罚。100,炸弹是60,然后猜了一个数字是30,30不是炸弹,那么现在猜数字的范围就缩小到30~80,每次猜不能猜边界上的值,直到有人猜中这个炸弹,然后就受到惩罚。游戏规则了解过后,我们就开始写代码:showinfo("提示","对不起,不能输入边界上的值,请重新输入。

使用python3,数字炸弹游戏规则:在一个数字范围内,有一个数字作为炸弹,谁猜中这个炸弹就被惩罚。比如范围是1~100,炸弹是60数字炸弹,然后猜了一个数字是30,30不是炸弹,那么现在猜数字的范围就缩小到30~100,又猜了一个数字80,80也不是炸弹,那么现在又缩小范围到30~80,每次猜不能猜边界上的值,直到有人猜中这个炸弹,然后就受到惩罚。

游戏规则了解过后,我们就开始写代码:

# coding=utf-8
# 猜数字游戏
__author__="沈老师"
import random
def paly():
    a=random.randint(2,99)  # 随机出现2到99之间的数
    start,end=1,100  #初始边界1和100
    while 1:
        b=int(input("请输入%d到%d之间的整数:"%(start,end)))
        if b==a:
            print("恭喜你中奖了")  #猜中炸弹提示
            break
        elif b>a:
            if b>=end:
                print("输入不合法,请重新输入:")  #不能猜边界上和边界外的值
            else:
                end=b
        else:
            if b<=start:
                print("输入不合法,请重新输入:")  #不能猜边界上和边界外的值
            else:
                start=b
if __name__=='__main__':
    paly()

下面是运行结果

运行结果

这个运行结果没有UI界面,如果想要更高逼格一点,可以使用python自带的tkinter库设计出UI界面,然后我们做一下错误处理,只能输入正常的数字,输入错误的发出错误提示数字炸弹,代码如下:

# coding=utf-8

__author__="沈老师"

from tkinter import *

import tkinter.messagebox as tm

import random

def play():

a=random.randint(2,99)

start,end=1,100

for j in range(100):

try:

root=Tk()

root.title("猜数字")

Label(root,text="请输入%d到%d之间的整数:"%(start,end),font=("Arial",35)).grid(row=0,column=0)

num=Entry(root,width=20)

num.grid(row=0,column=1)

Button(root,text="Yes",command=root.quit,font=("Arial",30)).grid(row=1,column=1)

root.mainloop()

b=int(num.get())

if b==a:

tm.showinfo("提示","恭喜您猜中了")

break

elif bend:

tm.showinfo("提示","对不起,不能输入边界外的值,请重新输入。")

elif b==start or b==end:

tm.showinfo("提示","对不起,不能输入边界上的值,请重新输入。")

elif b>a:

end=b

root.quit()

else:

start=b

root.quit()

except:

tm.showinfo("提示","您输入的不是整数,请重新输入!")

if __name__=='__main__':

play()

其他相关
俄军发起人海战术,乌军防线倒塌,丢失阿夫迪夫卡南部“钢铁门”

俄军发起人海战术,乌军防线倒塌,丢失阿夫迪夫卡南部“钢铁门”

作者: 天天见闻 时间:2023-11-30 阅读: 46
冬季攻势开始!乌军借机中断俄军补给线,但对方先下手,采用“疯狂”战术,猛轰250公里集合弹,抢多个乌阵地。 前言:乌克兰第26炮兵旅发言人卡拉什尼科夫说,乌军正在等待恶劣天气的到来,试图借机切断俄罗斯的补给线。然而,敌人的反击也相当激烈,采用“疯狂”战术,几乎10人一组,用大炮、集束炸弹猛轰乌军阵地。那么,这种“疯狂”战术,究竟是如何给乌军造成惨重损失的呢? (图解:俄军使用250公斤重集束炸弹轰炸乌克兰阵地) 1,“疯狂”战术:不怕生死突击...
局势升级,俄军杀进乌阵地,新型炸弹凌空爆炸,无数光点砸向地面

局势升级,俄军杀进乌阵地,新型炸弹凌空爆炸,无数光点砸向地面

作者: 天天见闻 时间:2023-11-23 阅读: 165
一场血腥的战斗还在继续!乌军前线拼命反击,俄军的“大杀器”投入战场,大量弹药高空爆炸,地面上同时发生数十起爆炸,杀伤力惊人。 前言:当俄乌冲突进入第一个冬天时,乌克兰和北约都有信心,如果他们再多加一点力量,他们就能让俄罗斯军队变成“流水”。特别是自6月发动反攻以来,乌扎伦斯基总统发誓要夺回克里米亚,并对俄罗斯军队进行了致命打击。 但是,随着第二个冬天的临近,乌鸦军有成千上万的精锐部队,没有取得任何重大进展。相反,俄罗斯军队在多条战线上发动了大规模进攻,而乌军的应对方式对西方国家来说也没有多大。与此同时,俄军的各种新式武器投入战场,前线乌军的压力越来越大。...
南北同时开打,7万俄军发起猛攻,大批弹药砸下,覆盖3万乌军

南北同时开打,7万俄军发起猛攻,大批弹药砸下,覆盖3万乌军

作者: 天天见闻 时间:2023-11-07 阅读: 77
奥前线又开始了一场恶战。俄罗斯派出7万大军前往阿夫杰耶夫卡前线,从南北两面猛攻,对赶来增援的3万多名乌军进行地面轰炸,成败一举 前言:巴以冲突升级,加上迅速降低了外界对俄罗斯冲突的关注度,乌军反攻进展缓慢,西方国家不满日益加剧,继续援助乌克兰的决心也逐渐动摇,特别是美国一些共和党人明确反对向乌克兰提供更多援助,认为这场战争“没有任何胜利的愿景”。 就而言,乌泽连斯基总统压力很大,甚至邀请美国前总统特朗普亲眼看看战场的情况。目前处于激战中的阿夫杰耶夫卡,是证明乌军实力的关键,下一轮俄乌冲突如何发展,或许取决于这场战的结果。...
氢弹也能变成常规武器?中国新世纪火药出世,或能当氢弹清洁引信

氢弹也能变成常规武器?中国新世纪火药出世,或能当氢弹清洁引信

作者: 天天见闻 时间:2023-02-04 阅读: 136
比TNT强10倍的炸弹威力有多大?美国之前新发明了一种炸药,仅仅1克就能把通风窗炸坏。 而我们今天要说的中国全氮阴离子盐炸弹比这个威力还大,炸弹水平的高低向来是衡量一个国家军事水平高低的一个重要标准,我们国家在这方面已经取得了前沿的成就,令国人感到十分骄傲,扬眉吐气了一番! ...
一客机遭“炸弹”威胁,北约总部发出警报!两架战机紧急起飞

一客机遭“炸弹”威胁,北约总部发出警报!两架战机紧急起飞

作者: 天天见闻 时间:2023-01-24 阅读: 147
综合参考消息、极目新闻,俄罗斯卫星社报道,希腊警方22日说,瑞安航空公司一架从波兰起飞的波音737客机收到机上有炸弹的消息后,在两架F-16战斗机的护送下降落在雅典机场。 希腊媒体称,该客机执飞波兰卡托维兹至希腊雅典线路。机上载有192人。 卡托维兹机场公关经理彼得・亚当奇克告诉法新社记者,客机飞行期间接到机上有炸弹的预警消息,所有地面和空中规则均已执行。“客机起飞后,机场信息中心接到电话称,客机上可能有爆炸装置。”亚当奇克说。 随后,北约总部发布警报,并指派一架匈牙利F-16战机和一架希腊F-16战机护送该客机。 ...
被全球禁止使用的8种武器分别是什么?

被全球禁止使用的8种武器分别是什么?

作者: 天天见闻 时间:2023-01-16 阅读: 259
能被禁用的武器都有一个共同特点,那就是——残忍! 第8名——三棱军刺 三棱军刺是我国发明的一种军用刺刀,学名叫56式军刺,人们之所以喜欢叫它三棱军刺,是因为它独特的外观。 三棱军刺采用三面血槽的构造,一旦被三棱军刺刺中,轻则血流不止,重则血液喷溅,没有任何止血的可能,哪怕医生就在身边也无能为力,因为伤口根本无法缝合,无法进行止血处理,只能眼睁睁看着自己失血而亡。 三棱军刺之所以被禁,其实还有一个重要原因——有毒! 几十年前,我国的工业水平有限,钢材的硬度不够,无法保证军刺的质量,为了提升军刺的强度,防止军刺生锈,延长军刺的使用寿命,我们在钢材中加了一种叫做砷的元素。...
我来说两句

年度爆文