猜数字游戏

01

目录

  • 确定目标
  • 分析目标

02

确定目标

看到标题后大家知道接下来要干嘛吗?

聪明,就是设计猜数字代码~

但是我需要有三种功能,哪三种?

  • 猜数字
  • 查看本局输入数据
  • 退出程序

那如何实现这三个功能,很简单

03

分析目标

导入相关模块

import random
from datetime import datetime

生成随机数字

def random_number():
    print('*'*30)
    print('随机数的范围为0~10')
    nb = random.choice([x for x in range(11)])
    return nb 

功能介绍

def intruduce():
    print('''
本程序有如下三种功能:
1、开始游戏
2、查看本局历史数据
3、退出程序
''')
    print('*'*30)

猜数字

def guess_number(nb):
    print('''
    游戏开始!!!
    温馨提示:猜测范围为10,您只有三次机会,请珍惜\n''')
    log = {}
    for i in range(3):
        try:
            guess_number = int(input('输入猜测的数字:'))
        except:
            print('输入错误,请输入有效数字')
            continue
        if guess_number>10:
            print('输入的数字已超出范围')
        else:
            time = datetime.now()
            log[time] = guess_number
            if guess_number>nb:
                print('\n不对不对,没你想得这么多\n')
            elif guess_number == nb:
                print('\n哇,你真是我的小蛔虫\n')
                break
            else:
                print('\n不对不对,你太小看我了吧\n')
    print(f'\n公布正确答案: {nb}\n')
    return log

查看本局输入的数据

def find_log(log):
    print('本局输入的有效数据为:\n')
    if len(log):
        for x,y in log.items():
            print(f'{x}:{y}')
    else:
        print('空') 

主程序

if __name__ == '__main__':
    choose_number = ['1','2','3']
    log = {} 
    while True:
        nb = random_number()
        intruduce()
        choose = input('输入对应功能的序号:')
        if choose == '1':
            log = guess_number(nb)
        if choose == '2':
            find_log(log)
        if choose == '3':
            break 
        if choose not in choose_number:
            print('请输入有效数字!!') 

我已经玩了几局了,自己设置的范围是0~10,所以难度低了点,猜中好多次了哈哈~那接下来就是小伙伴自己去happy咯~~~

本文分享自微信公众号 - 佛系编程人(py520llj),作者:佛系小卢

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-06-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ​愉快地迁移到Python3

    原文链接:https://github.com/arogozhnikov/python3_with_pleasure

    佛系编程人
  • 实战项目:飞机大战

    运行程序,英雄飞机出现在屏幕底边的中央区域,飞机中央每隔一秒会自动发射一枚子弹。随着游戏的开始,敌机会在屏幕上方随机不定时的出现在屏幕内向下飞行。英雄飞机需要通...

    佛系编程人
  • 监督学习和非监督学习

    人工智能 这个行业在现在是非常火爆的,我相信大家都有所了解。我对这个行业的认识是薪资高,门槛高,大部分要求是研究生以上学历。作为普通二本院校的我有点感到绝望~但...

    佛系编程人
  • python3——print使用

    py3study
  • 总结100个Pandas中序列的实用函数

    在分享《Pandas模块,我觉得掌握这些就够用了!》后有很多读者朋友给我私信,希望分享一篇关于Pandas模块中序列的各种常有函数的使用。经过一段时间的整理,本...

    用户1564362
  • 总结100个Pandas中序列的实用函数

    经过一段时间的整理,本期将分享我认为比较常规的100个实用函数,这些函数大致可以分为六类,分别是统计汇总函数、数据清洗函数、数据筛选、绘图与元素级运算函数、时间...

    用户2769421
  • 总结100个Pandas中序列的实用函数

    在分享《Pandas模块,我觉得掌握这些就够用了!》后有很多读者朋友给我私信,希望分享一篇关于Pandas模块中序列的各种常有函数的使用。经过一段时间的整理,本...

    1480
  • 盘点Pandas 的100 个常用函数

    本期将分享我认为比较常规的100个实用函数,这些函数大致可以分为六类,分别是统计汇总函数、数据清洗函数、数据筛选、绘图与元素级运算函数、时间序列函数和其他函数。

    double
  • 总结100个Pandas中序列的实用函数

    本期将分享我认为比较常规的100个实用函数,这些函数大致可以分为六类,分别是统计汇总函数、数据清洗函数、数据筛选、绘图与元素级运算函数、时间序列函数和其他函数。...

    石晓文
  • 总结100个Pandas中序列的实用函数

    因为每个列表都在分享《Pandas模块,我觉得掌握这些就够用了!》后有很多读者朋友给我私信,希望分享一篇关于Pandas模块中序列的各种常有函数的使用。经过一段...

    猴哥yuri

扫码关注云+社区

领取腾讯云代金券