鱼C论坛

 找回密码
 立即注册
查看: 3550|回复: 8

[已解决]作业16 疑问

[复制链接]
发表于 2015-11-26 11:08:26 | 显示全部楼层 |阅读模式
5鱼币
请教 如何 实现 输错了重新输入



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

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

最佳答案
2015-11-26 11:08:27
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]


for each in score:
    if name in each:
        print(name + '的得分是:', each[1])
        IsFind = True


while name not in each:
    print('查找的数据不存在!')
    name = input('请重新输入:')      
    for each in score:
        if name in each:
            print(name + '的得分是:', each[1])
            break

最佳答案

查看完整内容

name = input('请输入待查找的用户名:') score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]] for each in score: if name in each: print(name + '的得分是:', each[1]) IsFind = True while name not in each: print('查找的数据不存在!') name = input('请重新输入:') for each in score: if name in each: ...
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-11-26 11:08:27 | 显示全部楼层    本楼为最佳答案   
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]


for each in score:
    if name in each:
        print(name + '的得分是:', each[1])
        IsFind = True


while name not in each:
    print('查找的数据不存在!')
    name = input('请重新输入:')      
    for each in score:
        if name in each:
            print(name + '的得分是:', each[1])
            break
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2015-11-26 15:39:29 | 显示全部楼层
蕊儿XQ 发表于 2015-11-26 15:18
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄 ...

谢谢你
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-11-26 16:36:53 | 显示全部楼层
把成绩改为字典更方便。
  1. score = {'迷途':85, '黑夜':80, '小布丁':65, '福禄娃娃':95, '怡静':90}
  2. while True:
  3.     name = input('请输入待查找的用户名:')
  4.     if score.get(name)!=None:
  5.         print(name+'的得分是:',score[name])
  6.         break
  7.     else:
  8.         print('查找的数据不存在!')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2015-11-27 09:30:51 | 显示全部楼层
冬雪雪冬 发表于 2015-11-26 16:36
把成绩改为字典更方便。

高!!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-11-28 09:39:53 | 显示全部楼层
百度一下
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-12-19 21:46:03 | 显示全部楼层


def search(name, score):
    for each in score:
        if name in each:
            IsFind = True
            return name + '的得分是:', each[1]
    else:
        IsFind = False
        name = input('查找的数据不存在!请重新输入用户名:')
        return search(name, score)
        
            
            
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
IsFind = False
print(search(name, score))

>>>
请输入待查找的用户名:黑夜
('黑夜的得分是:', 80)
>>> ================================ RESTART ================================
>>>
请输入待查找的用户名:黑黑
查找的数据不存在!请重新输入用户名:黑夜
('黑夜的得分是:', 80)
>>>

演示如上,希望能帮到你哈^^
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-12-22 08:29:09 | 显示全部楼层
蕊儿XQ 发表于 2015-11-26 15:18
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄 ...

这个是不是有些重复了,可以精简一下
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-8-7 13:38:44 | 显示全部楼层
参考4楼
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-18 11:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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