鱼C论坛

 找回密码
 立即注册
查看: 1919|回复: 12

[已解决]新手关于range循环计数的求助

[复制链接]
发表于 2020-3-22 21:26:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请教一个问题,新手刚学到零基础学python的四章。想根据所学试着写个猜数的小游戏。最后一个循环想用range实现限制输入次数的方式,但是试了很多次都不成功。下午的时候发到新手那边求助,一个实习版主倒是帮忙指出了缩进和语法上的错误,可惜最后还是没有实现限制输入次数的方式。麻烦哪位高人抽空帮忙看看哪儿出了问题。我只学了四章,最后一个函数学的是range,书上介绍的没怎么看懂,搜了下网上的资料,觉得它似乎能做计数用。

  1. #第三组循环
  2. for i in range(5):
  3.     temp3 = str(input('最后一位密码为“雷隐隐”\n注意,你只有五次机会尝试最后一位密码:'))
  4.     guess = str('雾蒙蒙')

  5. while True:
  6.     if guess == temp3:
  7.         break
  8.     else:
  9.         temp3 = input('错误,你还有 %d 次机会' % 4-i)#想尝试用range实现计数功能,但是报错

  10. print('*'*10,'恭喜你打开了宝藏','*'*10)
复制代码
最佳答案
2020-3-22 22:10:43
S.archagnelice 发表于 2020-3-22 22:08
感觉挺尴尬的,怎么说他也确实帮忙改了我有的错误。所以给他了。
我再去网上扒拉扒拉吧,改 ...


三楼才是正确答案。
或者看看这个。
  1. print('最后一位密码为“雷隐隐”\n注意,你只有五次机会尝试最后一位密码。')
  2. guess = '雾蒙蒙'
  3. for i in range(5):
  4.     temp3=input("请尝试输入:")
  5.     if guess == temp3:
  6.         print('*'*10,'恭喜你打开了宝藏','*'*10)
  7.         break
  8.     else:
  9.         temp3 = print('错误,你还有 %d 次机会。' % (4-i))#想尝试用range实现计数功能,但是报错
  10. else:
  11.     print('*'*10,'打开宝藏失败!','*'*10)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-22 21:37:37 | 显示全部楼层
为啥感觉那实习版主就是我。。。
  1. #第三组循环
  2. for i in range(5):
  3.     temp3 = str(input('最后一位密码为“雷隐隐”\n注意,你只有五次机会尝试最后一位密码:'))
  4.     guess = str('雾蒙蒙')

  5. temp = 4
  6. while True:
  7.     if guess == temp3:
  8.         break
  9.     else:
  10.         temp -= 1
  11.         temp3 = input('错误,你还有 %d 次机会' % temp)#想尝试用range实现计数功能,但是报错

  12. print('*'*10,'恭喜你打开了宝藏','*'*10)
复制代码

可以用一个变量来代表i
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

发表于 2020-3-22 21:57:08 | 显示全部楼层
本帖最后由 jackz007 于 2020-3-22 22:23 编辑

        试试这个代码
  1. secret , n = '雾蒙蒙' , 5
  2. print('最后一位密码为“雷隐隐”\n注意,你只有 ' + str(n) + ' 次机会尝试最后一位密码:\n')   
  3. for i in range(n):
  4.     if input('请输入密码:') == secret :
  5.         print('*' * 10 , '恭喜你打开了宝藏' , '*' * 10)
  6.         break
  7.     else:
  8.        if i < n - 1:
  9.            print('错误,你还有 %d 次机会\n' % (n - i - 1))
  10. else:
  11.     print('很遗憾,%d 次机会已经用完!' % n)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-3-22 21:57:58 | 显示全部楼层
qiuyouzhi 发表于 2020-3-22 21:37
为啥感觉那实习版主就是我。。。

可以用一个变量来代表i

这……尴尬了,我觉得在那边再问一遍不太好,那帖子已经结束了再追问似乎也不太好,就来这边看看求助了。嗯,现在明白了,是我那个变量没弄好。这次成功了。多谢多谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-22 22:01:41 | 显示全部楼层
qiuyouzhi 发表于 2020-3-22 21:37
为啥感觉那实习版主就是我。。。

可以用一个变量来代表i

你的程序只是修改了他的错误。并没有实现他想要的功能啊。他为什么就把最佳给你了啊。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-22 22:08:50 | 显示全部楼层
sunrise085 发表于 2020-3-22 22:01
你的程序只是修改了他的错误。并没有实现他想要的功能啊。他为什么就把最佳给你了啊。


感觉挺尴尬的,怎么说他也确实帮忙改了我有的错误。所以给他了。
我再去网上扒拉扒拉吧,改正过的是一直循环下去。可能我学的太少了,一共就四章,我想要的效果用这四章的知识没法实现。实在找不到资料就等我再往后学学再回头修改下。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-22 22:10:43 | 显示全部楼层    本楼为最佳答案   
S.archagnelice 发表于 2020-3-22 22:08
感觉挺尴尬的,怎么说他也确实帮忙改了我有的错误。所以给他了。
我再去网上扒拉扒拉吧,改 ...


三楼才是正确答案。
或者看看这个。
  1. print('最后一位密码为“雷隐隐”\n注意,你只有五次机会尝试最后一位密码。')
  2. guess = '雾蒙蒙'
  3. for i in range(5):
  4.     temp3=input("请尝试输入:")
  5.     if guess == temp3:
  6.         print('*'*10,'恭喜你打开了宝藏','*'*10)
  7.         break
  8.     else:
  9.         temp3 = print('错误,你还有 %d 次机会。' % (4-i))#想尝试用range实现计数功能,但是报错
  10. else:
  11.     print('*'*10,'打开宝藏失败!','*'*10)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-3-22 22:11:39 | 显示全部楼层

棒,就是这效果。我琢磨琢磨你这个,里面的东西都是前四章里的。还是我学的不够好。多谢多谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-22 22:15:37 | 显示全部楼层
sunrise085 发表于 2020-3-22 22:10
三楼才是正确答案。
或者看看这个。

嗯,你和三楼的都是我想要的效果。多谢多谢,你这个我能理解,三楼的略微深了点,有几个语句不太懂,一会儿去网上查查资料。谢谢各位的热心帮忙。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-22 22:18:16 | 显示全部楼层
S.archagnelice 发表于 2020-3-22 22:15
嗯,你和三楼的都是我想要的效果。多谢多谢,你这个我能理解,三楼的略微深了点,有几个语句不太懂,一会 ...

有什么不理解的可以说一下,或许能帮你解答。

另外,你错选最佳,可能会误导别人,一会儿可能会有版主更改最佳
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-22 22:24:00 | 显示全部楼层
sunrise085 发表于 2020-3-22 22:18
有什么不理解的可以说一下,或许能帮你解答。

另外,你错选最佳,可能会误导别人,一会儿可能会有版主 ...

嗯,以后选最佳会更谨慎些了。确实三楼的更简练,你那个更符合我现阶段的理解能力。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-22 22:27:54 | 显示全部楼层

还请麻烦版主帮忙改下最佳吧,开始选那个最佳确实有点意气用事了,就是感觉又遇到了他不太好意思,虽然没改成我想要的效果,但是起码人家也帮忙了。所以才选了个最佳。以后我会注意。多谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-23 08:03:51 | 显示全部楼层
sunrise085 发表于 2020-3-22 22:18
有什么不理解的可以说一下,或许能帮你解答。

另外,你错选最佳,可能会误导别人,一会儿可能会有版主 ...

已更改
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-9 06:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表