求大佬能帮助
print('----------sss--------------')import random
secret=random.randint(1,10)
times=3
temp=input('请输入数字:')
guess=0
while (guess !=secret)and (times>0):
if temp.isdigit():
guess=int(temp)
if guess==secret:
print('小蛔虫')
else:
if guess>secret:
print('大了大了')
else:
print('小了小了')
if times>1:
temp=input('请再输入一次:')
else:
print('机会用完了')
else:
temp=input('请输入一个整数:')
times=times-1
print('游戏结束')
期望结果:
请输入数字: f
请输入一个整数:f
请输入一个整数:f
游戏结束 print("----------sss--------------")
import random
secret = random.randint(1, 10)
times = 3
guess = 0
while (guess != secret) and (times > 0):
temp = input("请输入数字:")
times = times - 1
if temp.isdigit():
guess = int(temp)
if guess == secret:
print("小蛔虫")
else:
if guess > secret:
print("大了大了")
else:
print("小了小了")
if not times:
print("机会用完了")
print("游戏结束")
请问你的问题是? Judie 发表于 2021-2-8 09:04
请问你的问题是?
请输入数字:f
请输入一个整数:f
请输入一个整数:f
请输入一个整数:f
游戏结束
这是我的代码运行结果,我想让它变成我的期望结果 本帖最后由 Daniel_Zhang 于 2021-2-8 12:46 编辑
你有没有发现一件事,一个很关键的问题,你的 times = times - 1 在无论是否为数字的情况下,都会 - 1
而我们的期望是,只有它是数字的情况下,才会 - 1,也就是剩余机会 - 1
所以应该把它放在 if temp.isdigit(): 的里面对不对
print('----------sss--------------')
import random
secret=random.randint(1,10)
times=3
temp=input('请输入数字:')
guess=0
while (guess !=secret)and (times>0):
if temp.isdigit():
guess=int(temp)
if guess==secret:
print('小蛔虫')
else:
if guess>secret:
print('大了大了')
else:
print('小了小了')
if times>1:
temp=input('请再输入一次:')
else:
print('机会用完了')
times=times-1
else:
temp=input('请输入一个整数:')
print('游戏结束') °蓝鲤歌蓝 发表于 2021-2-8 12:38
老哥,这个还是没解决问题啊,times -1 那个得放在 if temp.isdigit(): 里面,不然跑起来还是会如同楼主说的那样{:10_245:} Daniel_Zhang 发表于 2021-2-8 12:47
老哥,这个还是没解决问题啊,times -1 那个得放在 if temp.isdigit(): 里面,不然跑起来还是会如同楼 ...
你运行一下不就知道了,我只是没在 猜对了 后面加 break 跳出循环而已 本帖最后由 Daniel_Zhang 于 2021-2-8 13:06 编辑
°蓝鲤歌蓝 发表于 2021-2-8 12:50
你运行一下不就知道了,我只是没在 猜对了 后面加 break 跳出循环而已
其实也不需要 break 因为 while 那里会不满足 guess != secret 的条件,运行不了
可能我误解了楼主的意思?我以为楼主想实现的是:
输入的不是数字的话,次数不会 - 1
Daniel_Zhang 发表于 2021-2-8 13:04
其实也不需要 break 因为 while 那里会不满足 guess != secret 的条件,运行不了
我只是自己觉得猜了就要 -1,不知道楼主怎么想的。
break 用不用都没关系了,我一般都只回答楼主 说的那个具体问题,其他地方如果也有问题,我一般也不会说。
页:
[1]