猜数字游戏

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)

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

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

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券