Python实现不一样的猜数字游戏的示例代码

 更新时间:2023年02月02日 11:18:55   作者:木木子学python  
大家知道“猜数字”这个游戏吗?顾名思义就是一个人想一个数字,另一个人猜。本文就来用Python实现一款不一样的猜数字游戏,感兴趣的可以了解一下

前言

日子从不亏欠,每一个努力向上的人,

未来的走运, 都是过往尽力的积累。

人勤春来早,奋进正当时。新春伊始,我们迎来了2023年开工第一天。

栗子同学恭祝大家开工大吉,新年新气象,万事开门红!

大家知道“猜数字”这个游戏吗?顾名思义就是一个人想一个数字,另一个人猜。这个游戏简单又有趣,小编小时候很喜欢玩。游戏开始了!小伙伴从 1~100 中任选一个数字记在心里让我猜,我每猜一个数字,他只能说小了、大了或对了。直到我猜到数字,游戏结束。

那时的我比较笨,总是从 1 开始依次往上猜……

1,小了。那就是 2,2 也小。那就是 3……就这样一个一个猜测数字花费了很长时间。如果他定的数字是 99,那我要猜 99 次才能猜到!小伙伴表示很无奈,后来也不想再和我玩了。

长大之后的一次偶然的机会,我看到了一本书叫《算法图解》。这本书上竟然提到了小时候我玩的“猜数字”游戏,我才了解到,这个游戏不是最终猜到这个数字就算赢,而是又快又准确地猜到数字,那才是高手!那如何快速准确地猜到数字呢?书中告诉了我们“猜数字”游戏快速胜出的小窍门,让我大呼神奇,茅塞顿开。首先从 50 开始猜。

​小了,但我们可以排除一半的数字!1~50 都小了。接下来,猜 75。

​大了,那余下的数字又排除了一半!75~100 都可以排除。接下来,猜 63(50 和 75 中间的数字)。

大了,但又可以排除一半数字!可以从 51~62 中选了!

接下来,猜 57(50 和 63 中间的数字)。对了!

猜数字游戏还是一个挺好玩的游戏,可以勾起你童年的回忆。这样的游戏也很适合在聚会上玩,今天一起来猜猜吧!来挑战编写一款猜数字Python代码的高级版本哦!顺便教大家怎么玩才能快速找到答案啦!

正文

创建一个可以猜数字的游戏,它会在1~100以内随机选择一个数,然后让玩家挑战在10轮以内猜出这个数字,每一轮都要告诉玩家正确或者错误,如果出错了,则告诉他数字是低还是高了,一旦玩家猜测正确,或者玩家用完了回合游戏将会结束。游戏结束后,可以让玩家选择重新开始,消耗相应的金币即可以继续游戏。

一、运行环境

 ​[开发环境]:

 python 3.6 运行代码 

 pycharm 2021 辅助敲代码 

 第三方模块 pip install 模块名 

 镜像源安装 pip install -i pypi.douban.com/simple/ +模块名 

python 安装包 安装教程视频 

pycharm 社区版 专业版 及 激活码免费找我拿即可 !

二、代码展示

主程序——

import random
import time
x1 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
for i in x1:
    print(i, end='')
    time.sleep(0.02)
print('\n加', end='')
time.sleep(0.05)
print('载', end='')
time.sleep(0.05)
print('中', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.', end='')
time.sleep(0.05)
print('.')
print('欢迎来到猜数游戏!')
lives = 10
tax = 1
ranswer = 0
coines = 300
number = random.randint(0, 100)
name = input('请输入昵称!')
if name != '爸爸':
    print('尊敬的用户' + name + '您好')
    print('欢迎来到猜数游戏!')
elif name == '爸爸':
    print('我是你爸爸!')
    print('你是我儿子!')
a = ['第' + str(tax) + '关!']
for l in a:
    time.sleep(0.05)
    print(l)
c = ['现有' + str(coines) + '金币!' ]
for d in c:
    time.sleep(0.05)
    print(d)
while lives > 0:
    print('请', end='')
    time.sleep(0.05)
    print('输', end='')
    time.sleep(0.05)
    print('入', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('-', end='')
    time.sleep(0.05)
    print('1', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('0', end='')
    time.sleep(0.05)
    print('的', end='')
    time.sleep(0.05)
    print('数', end='')
    time.sleep(0.05)
    print('字', end='')
    time.sleep(0.05)
    answer = input(':')
    ranswer = int(answer)
    if ranswer < number:
        print('''|( ̄Д  ̄)=凸
太小了!''')
        lives -= 1
        time.sleep(0.5)
    elif ranswer > number:
        print('''(︶︿︶)=凸
太大了!''')
        lives -= 1
        time.sleep(0.5)
    if ranswer == number:
        print('''(凸艹皿艹)凸
竟然对了!''')
        tax += 1
        lives = 8
        time.sleep(0.05)
        print('是', end='')
        time.sleep(0.05)
        print('否', end='')
        time.sleep(0.05)
        print('在', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('?', end='')
        time.sleep(0.05)
        print('\n不', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('试', end='')
        time.sleep(0.05)
        print('试', end='')
        time.sleep(0.05)
        print('!', end='')
        print('へ', end='')
        time.sleep(0.05)
        print('(', end='')
        time.sleep(0.05)
        print('`', end='')
        time.sleep(0.05)
        print('_', end='')
        time.sleep(0.05)
        print('ゝ', end='')
        time.sleep(0.05)
        print('´', end='')
        time.sleep(0.05)
        print(')', end='')
        time.sleep(0.05)
        print('▄',end='')
        time.sleep(0.05)
        print('︻',end='')
        time.sleep(0.05)
        print('┻',end='')
        time.sleep(0.05)
        print('┳',end='')
        time.sleep(0.05)
        print('═',end='')
        time.sleep(0.05)
        print('═',end='')
        time.sleep(0.05)
        print('━',end='')
        time.sleep(0.05)
        print('一')
        time.sleep(0.05)
        print('y', end='')
        time.sleep(0.05)
        print('/', end='')
        time.sleep(0.05)
        yn = input('n')
        if yn == 'n':
            print('杀过' + sr(tax) + '关!')
            print('   凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)')
            x1 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
            for i in x1:
                print(i, end='')
                time.sleep(0.02)
            break
        else:
            print('ヾ(@^▽^@)ノ还是好盆友!')
            lives = 10
            number = random.randint(0, 100)
            a = ['第' + str(tax) + '关!']
            for l in a:
                time.sleep(0.05)
                print(l)
            coines += 300
            c = ['现有' + str(coines) + '金币!' ]
            for d in c:
                time.sleep(0.05)
                print(d)
            continue
    if lives == 0 and coines > 200:
        print('很', end='')
        time.sleep(0.05)
        print('遗', end='')
        time.sleep(0.05)
        print('憾', end='')
        time.sleep(0.05)
        print('!')
        time.sleep(0.05)
        print('机', end='')
        time.sleep(0.05)
        print('会', end='')
        time.sleep(0.05)
        print('耗', end='')
        time.sleep(0.05)
        print('尽', end='')
        print('!')
        print('是', end='')
        time.sleep(0.05)
        print('否', end='')
        time.sleep(0.05)
        print('在', end='')
        time.sleep(0.05)
        print('玩', end='')
        time.sleep(0.05)
        print('(', end='')
        time.sleep(0.05)
        print('消', end='')
        time.sleep(0.05)
        print('耗', end='')
        time.sleep(0.05)
        print('2', end='')
        time.sleep(0.05)
        print('0', end='')
        time.sleep(0.05)
        print('0', end='')
        time.sleep(0.05)
        print('金', end='')
        time.sleep(0.05)
        print('币', end='')
        time.sleep(0.05)
        print(')', end='')
        time.sleep(0.05)
        print('y', end='')
        time.sleep(0.05)
        print('/', end='')
        time.sleep(0.05)
        YN = input('n') 
        if YN == 'y':
            print('ヽ( ̄ω ̄( ̄ω ̄〃)ゝ是条汉子!')
            lives = 10
            coines -= 300
            c = ['现有' + str(coines) + '金币!' ]
            for d in c:
                time.sleep(0.05)
                print(d)
            number = random.randint(0, 100) 
        else:
            tax -= 1
            print('杀过' + str(tax) + '关!')
            print('   凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)凸(艹皿艹凸)')
            x2 = ['╠','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','┅','╣']
            for j in x2:
                print(j, end='')
                time.sleep(0.02)
    elif lives == 0 and coines < 200:
        y = ['金币不足!\n无法复活!']
        for f in y:
            print(f)
            time.sleep(0.05)
            tax -= 1
            print('杀过' + sr(tax) + '关!')
        break

三、效果展示

游戏规则:猜数字高级版本是一个闯关版本—每10次机会猜,猜对即可获取300金币,猜错即

游戏失败,初始金币为300,每玩一次需要消耗200金币。

1)第一关卡

2)随机截图

到此这篇关于Python实现不一样的猜数字游戏的示例代码的文章就介绍到这了,更多相关Python猜数字游戏内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 利用python库在局域网内传输文件的方法

    利用python库在局域网内传输文件的方法

    今天小编就为大家分享一篇利用python库在局域网内传输文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • python word转pdf代码实例

    python word转pdf代码实例

    这篇文章主要介绍了python word转pdf代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python绘制3D曲面图的示例代码

    Python绘制3D曲面图的示例代码

    Python提供了多种库和工具,使得创建和定制3D曲面图变得简单,本文将介绍如何使用Matplotlib和mpl_toolkits.mplot3d库绘制3D曲面图,感兴趣的可以了解下
    2024-04-04
  • python批量生成身份证号到Excel的两种方法实例

    python批量生成身份证号到Excel的两种方法实例

    这篇文章主要给大家介绍了关于python批量生成身份证号到Excel的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • python之tensorflow手把手实例讲解猫狗识别实现

    python之tensorflow手把手实例讲解猫狗识别实现

    要说到深度学习图像分类的经典案例之一,那就是猫狗大战了。猫和狗在外观上的差别还是挺明显的,无论是体型、四肢、脸庞和毛发等等, 都是能通过肉眼很容易区分的。那么如何让机器来识别猫和狗呢?网上已经有不少人写过这案例了,我也来尝试下练练手。
    2021-09-09
  • 一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系

    一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系

    这篇文章主要介绍了一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • mac下pycharm设置python版本的图文教程

    mac下pycharm设置python版本的图文教程

    今天小编就为大家分享一篇mac下pycharm设置python版本的图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 用Python获取亚马逊商品信息

    用Python获取亚马逊商品信息

    大家好,本篇文章主要讲的是用Python获取亚马逊商品信息,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • python kafka 多线程消费者&手动提交实例

    python kafka 多线程消费者&手动提交实例

    今天小编就为大家分享一篇python kafka 多线程消费者&手动提交实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python的迭代器和生成器

    Python的迭代器和生成器

    由于在看一个python项目,遇到了迭代器和生成器的使用,正好之前自己也没有细看这部分,今天就稍微梳理一下吧!
    2015-07-07

最新评论