鱼C论坛

 找回密码
 立即注册
查看: 5643|回复: 14

第16讲理的IsFind不太明白,请教一下

[复制链接]
发表于 2014-10-23 13:43:51 | 显示全部楼层 |阅读模式

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

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

x

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:  "就是这句,这个IsFind 是和哪个对应"
    print('查找的数据不存在!')


1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-10-23 14:10:55 | 显示全部楼层
执行顺序是先输入name的值,然后isfind的值是false,然后是循环检查name的值等不等于次次循环出来的each的值,如果等于就打印分数,把isfind的值改为true,退出循环。如果没有查找到,那么isfind 的值就是一开始的false,那么接下来就是打印数据不存在了。
如果不用两个if,把第二个的语句放到第一个else部分,那么就会循环打印四次,太浪费。
这里的isfind就是score下面的isfind。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-23 15:01:55 | 显示全部楼层
isfind就是一个标识,你可以取其他名字,flag或者其他等等,这里设置这个标识就是为了判断是找到了跳出循环结束程序,还是循环完没找到,程序才结束
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-23 15:16:26 | 显示全部楼层
破渔网兜兜 发表于 2014-10-23 15:01
isfind就是一个标识,你可以取其他名字,flag或者其他等等,这里设置这个标识就是为了判断是找到了跳出循环 ...

谢谢,我明白了,非常感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-24 00:25:08 | 显示全部楼层
跟着小甲鱼学Python
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-24 00:25:42 | 显示全部楼层
跟着小甲鱼学Python
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2014-10-30 18:27:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-24 13:48:24 | 显示全部楼层
今天也看到这里来了,正好查到,感谢楼主发帖咨询与其他鱼油的反馈。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-4-8 18:56:16 | 显示全部楼层
本帖最后由 hikaru2015 于 2017-4-8 19:05 编辑

IsFind  这个函数好像无意义啊,最后的if改为else:也行吧
name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]

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

上述程序是可以运行的,但有个疑问,为什么else是在if外面一层的,为什么能起作用?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-5-19 12:10:46 | 显示全部楼层
hikaru2015 发表于 2017-4-8 18:56
IsFind  这个函数好像无意义啊,最后的if改为else:也行吧
name = input('请输入待查找的用户名:')
score ...

你最后定义那个else 定义的地方是错的,不是全全局的变量,而是去定义一个局部的变量,这个else是假设的条件
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-13 23:33:45 | 显示全部楼层
我不懂的已经有人问过,看了就理解了,谢谢 。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 16:42:07 | 显示全部楼层
each[1]:什么意思哟,不是指元组的第一个指么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-14 07:14:15 From FishC Mobile | 显示全部楼层
1322703365@qq.c 发表于 2018-5-17 16:42
each[1]:什么意思哟,不是指元组的第一个指么

同问
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-12 10:10:22 | 显示全部楼层
1322703365@qq.c 发表于 2018-5-17 16:42
each[1]:什么意思哟,不是指元组的第一个指么


each[1]  指的是第二个元素,只要是索引值,都是从 0 开始的,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-4 10:41:20 | 显示全部楼层
这个程序运行后怎么都是打印查找数据不存在
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 23:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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