零基础学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-目录









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

原文地址:https://www.cnblogs.com/raylee2007/p/4774527.html