Python程序练习题,猜数游戏

时间:2025-05-08 11:32:50

在程序中预设一个0~9之间的整数,让用户通过键盘输入所猜的数字,如果大于设数字,显示“遗憾,太大了”;如果小于预设数字,显示“遗憾,太小了”,如此循环,直至猜中该数,显示“预测N次,你猜中了!”其中N是用户输入数字的次数。
代码如下:

M=5#M为预设数字
N=0#记录猜数次数初始值为零
while True:
    N+=1 
    m=input("请输入0—9之间你猜想的数字:")
    if eval(m)>M:
        print("遗憾,太大了")
    elif eval(m)<M:
        print("遗憾,太小了")
    else:
        break
print("预测了{}次,你猜中了,答案就是{}".format(N,M))

若想预设数字为随机的,可以引用Python内置的标准库random来生成随机预设数字,修改如下:

import random
M=random.randint(0,100)#这里生成0~100之间的一个随机数为预设数字
N=0#记录猜数次数
while True:
    N+=1 
    m=input("请输入0—100之间你猜想的数字:")
    if eval(m)>M:
        print("遗憾,太大了")
    elif eval(m)<M:
        print("遗憾,太小了")
    else:
        break
print("预测了{}次,你猜中了,答案就是{}".format(N,M))

如果当用户输入的不是整数(如字母,浮点数等)时,程序会终止执行退出。倘若当用户输入的人不是整数时,我们希望输出:“输入内容必须是整数!”并让用户重新输入,可做出如下修改:
利用while True:语句进行无限循环,当用户输入错误时,重新开始下一次循环,直到用户输入正确并程序运行结束即可。代码如下:

import random
M=random.randint(0,100)
N=0
while True:
    N+=1 
    m=input("请输入0—100之间你猜想的数字:")
    if m.isnumeric():#判断用户输入是否为数字
        if eval(m)>M:
            print("遗憾,太大了")
        elif eval(m)<M:
            print("遗憾,太小了")
        else:
            break#执行该语句时就意味着用户猜对数字,结束循环
    else:
        print("输入错误,请输入整数数字:")
print("预测了{}次,你猜中了,答案就是{}".format(N,M))

Python拥有强大的内置类和函数库,此外世界各地程序员通过开源社区贡献了十几万个第三方函数库,几乎覆盖了计算机技术的各个领域,编写Python程序可以大量的利用已有的内置或第三方代码,具备良好的编程生态。