Python编写程序

猜数游戏:6次机会,添加断言和异常的捕获,如果输入不是1~100的数字,提示信息,且机会的次数不会减少

a=int(input('请设定猜数的数值:'))
if 1<=a<=100:
   print(a)
else:
   print('无效数值,请重新输入1-100以内的数值') #自行输入数值
for g in range(1,6):
    d=int(input('请输入第%d次猜数的数值:'%g))
    if d==a:
        print('恭喜你,猜对了')
        break
    elif g==5:
        print('很遗憾,你的次数已经用完')
    elif d<a:
        print('抱歉,你猜小了')
    elif d>a:
        print('抱歉,你猜大了')

您好已经完成,如果有帮助,可以关注我哦,持续交流


import random

flag_num = 6
random.seed(10)
random_num = random.randint(1,101)
print("当前的数值为:-->",random_num)
while flag_num:
    num = input("猜数游戏开始,请输入1-100的数字")
    # int_num = 0
    try:
        int_num = int(num)
    except:
        print("请输入1-100之内的整数,不要包含特殊符号")
        print("还有 {} 次猜数字的机会!!".format(flag_num))
        continue

    assert not int_num>100,"当前数字应小于100"
    assert not int_num<1,"当前数字应大于1"
    # assert int_num,"当前数字小于1"

    if int_num == random_num:
        flag_num = 0
        print("恭喜你猜对了,正确数字为{}".format(random_num))
        break
    else:
        flag_num = flag_num - 1
        print("还有 {} 次猜数字的机会!!".format(flag_num))
        continue

输出测试1

D:\ProgramData\Anaconda3\envs\py10\python.exe D:/pythonproject/chapter11/csdn博客/断言案例.py
当前的数值为:--> 74
猜数游戏开始,请输入1-100的数字80
还有 5 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字70
还有 4 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字aad
请输入1-100之内的整数,不要包含特殊符号
还有 4 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字90
还有 3 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字1111
Traceback (most recent call last):
  File "D:\pythonproject\chapter11\csdn博客\断言案例.py", line 21, in <module>
    assert not int_num>100,"当前数字应小于100"
AssertionError: 当前数字应小于100

输出测试2:

当前的数值为:--> 74
猜数游戏开始,请输入1-100的数字80
还有 5 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字90
还有 4 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字70
还有 3 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字60
还有 2 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字20
还有 1 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字10
还有 0 次猜数字的机会!!

输出测试3:

当前的数值为:--> 74
猜数游戏开始,请输入1-100的数字99
还有 5 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字2
还有 4 次猜数字的机会!!
猜数游戏开始,请输入1-100的数字74
恭喜你猜对了,正确数字为74