小森2020 发表于 2020-10-15 23:13:32

python 课后作业16讲的疑问


name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
IsFind = False

for each in score:
    if name in each:
      print(name + '的得分是:', each)
      IsFind = True
      break
   
if IsFind == False:
    print('查找的数据不存在!')

修改代码,要求当用户查找的用户名不存在时,重复获取用户输入

笨鸟学飞 发表于 2020-10-15 23:36:28

print('本程序支持重复执行,输入“exit”即可退出程序')
while True:
    name = input("代码省略自己写")
    #输入完检测是否输入了程序退出指令,不加退出指令则程序只能点叉关掉,不科学
    if name == "exit":
      break
    #后面复制你的代码
    #查找数据不存在后,使用“continue”,让程序循环执行即可
    print("查找的数据不存在")
    continue
   

沐羽尘 发表于 2020-10-15 23:37:29

可以使用while循环,限制IsFind == False重复这个循环就可以啦,代码如下IsFind = False
while IsFind == False:
    name = input('请输入待查找的用户名:')
    score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]


    for each in score:
      if name in each:
            print(name + '的得分是:', each)
            IsFind = True
            break
      
    if IsFind == False:
      print('查找的数据不存在!')

效果如下

qq1484730945 发表于 2020-10-15 23:44:23

{:10_245:}{:10_245:}{:10_245:}{:10_245:}你这是整句话疑问,不懂其中的表示啥的吗

也就是当用户输入一个不存在的名字, 他就会放回叫你重新输入一次,一直输入不正确一直返回,除非添加一个输出几次错误自动退出,

直接加一个判断就好了,判断输入名字是否存在对象 score中,不存在则返回重新输入,在添加一个输入几次就会退出的条件,count加一个计数的就好

name = input("请输入带查找的用户名:")
score =[['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
conut = 4# 计数器,用来停止循环
IsFind = False# 就是False
while conut != 1:
   
    for each in score:   # 遍历score 对象
      if name in each: # 判断each(也就是score对象每个元素拿出来查找对比输入的值存不存在)有的话打印出来然后跳出循环
            print(name + '的得分是:',each)
            IsFind = True# 这里对象变成了True 所以下面的代码将不会执行,直接跳出循环,结束
            conut = 1 # 直接等于1,跳出循环



    if IsFind == False:    # 如果没有,则让用户接着输入,循环到计数器等于1就会退出循环
      print("查找的数据不存在")
      conut -= 1
      print("请在次输入待查找的用户名,您还有%s次机会"%conut)
      name = input('请输入:')


{:10_266:}{:10_266:}{:10_266:}{:10_266:}{:10_266:}{:10_266:}我也是新手,代码写的有点差

qq1484730945 发表于 2020-10-15 23:46:38

{:10_266:}{:10_266:}{:10_266:}好家伙,来晚了一点,没了最佳

小森2020 发表于 2020-10-15 23:57:14

qq1484730945 发表于 2020-10-15 23:44
你这是整句话疑问,不懂其中的表示啥的吗

也就是当用户输入一 ...

你的回答也很有帮助谢谢,我是小白,唉一个脑筋没转过来,对whlie循环理解不深刻

qq1484730945 发表于 2020-10-16 00:05:39

小森2020 发表于 2020-10-15 23:57
你的回答也很有帮助谢谢,我是小白,唉一个脑筋没转过来,对whlie循环理解不深刻

{:10_281:}{:10_281:}{:10_281:}{:10_281:}{:10_281:}多做作业就懂了,我都是这样过来的,哈哈哈,睡觉了,不懂就多发帖子问问就好了
页: [1]
查看完整版本: python 课后作业16讲的疑问