• 零基础学python-2.15 回到我们的游戏 加入for以及列表


    我们先贴上之前的代码,回顾一下功能

    import random
    secret=random.randint(1,100)#生成随机数
    #print (secret)
    time=6#猜数字的次数
    guess=0#输入的数字
    minNum=0#最小随机数
    maxNum=100#最大随机数
    print("---------欢迎来到猜数字的地方,请开始---------")
    while guess!=secret and time>=0:#条件
        guess=int(input("*数字区间0-100,请输入你猜的数字:"))
        print("你输入数字是:",guess)
        if guess==secret:
            print("猜对了,真厉害")
        else:
            #当不等于的时候,还需要打印出相应的区间,让用户更容易使用
            if guess<secret:
                minNum=guess
                print("你的猜数小于正确答案")            
                print("现在的数字区间是:",minNum,"-",maxNum)
            else:
                maxNum=guess
                print("你的猜数大于正确答案")
                print("数字区间是:",minNum,"-",maxNum)
            print("太遗憾了,你猜错了,你还有",time,"次机会")
        time-=1
    print("游戏结束")
    

    在上面只能一个用户在玩,不能够支持多用户,而且没有记录用户的成绩,我们下面改进一下上面的代码,使得他支持多用户,还有记录用户的成绩

    所以,我们引入列表作为记录用户成绩的载体,然后引入for语句作为循环打印成绩

    下面我们输入代码:

    import random
    exitTag=0
    userList={}
    while exitTag!=1:
        userName=input("请输入你的名字:")
        if userName=='exit':
            exitTag=1
            break;
        else:
            secret=random.randint(1,100)#生成随机数
            #print (secret)
            time=6#猜数字的次数
            guess=0#输入的数字
            minNum=0#最小随机数
            maxNum=100#最大随机数
            print("---------欢迎来到猜数字的地方,请开始---------")
            while guess!=secret and time>=0:#条件
                guess=int(input("*数字区间0-100,请输入你猜的数字:"))
                print("你输入数字是:",guess)
                if guess==secret:
                    userList[userName]=7-time
                    print("猜对了,真厉害")
                    print("历史记录:")
                    for item in userList:
                        print(item+"只用了"+str(userList[item])+"次就猜到了")                
                else:
                    #当不等于的时候,还需要打印出相应的区间,让用户更容易使用
                    if guess<secret:
                        if minNum<guess:
                            minNum=guess
                        print("提示:你的猜数小于正确答案")            
                        print("提示:正确的数字区间是:",minNum,"-",maxNum)
                    else:
                        if maxNum>guess:
                            maxNum=guess
                        print("提示:你的猜数大于正确答案")
                        print("提示:正确的数字区间是:",minNum,"-",maxNum)
                    print("太遗憾,你猜错了,你还有",time,"次机会")
                time-=1
    print("游戏结束")
    


    这节就说到这里,谢谢大家

    ------------------------------------------------------------------

    点击跳转零基础学python-目录









    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    全排列(next_permutation)
    Codeforces Round #321 (Div. 2)C(tree dfs)
    cf_ducational Codeforces Round 16_D(gcd)
    cf455a(简单dp)
    cf584a(水题)
    cf112a(水题)
    冒泡排序
    Python内置类型性能分析
    常见时间复杂度
    MongoDB 备份
  • 原文地址:https://www.cnblogs.com/raylee2007/p/4774527.html
Copyright © 2020-2023  润新知