上一节课,我们讲了Python中列表的一些基本操作,本节课程将会深入的讲解列表的搜索和排序的功能
请点击右上角“关注”按钮关注我们哟:跟着木辛老师学习Python编程知识,变身快乐的编程达人吧~
我们现在的列表里有很多元素了,如果我们想查找一下元素’O'是否存在列表中,应该怎么办呢?
如果一个个查找的话,不一会就眼花缭乱了,该怎么办呢?
对了!有的小朋友们提出来:让我们问问Python有没有提供查找列表元素的方法吧。
这个思维方式非常棒!当我们养成了动脑筋的好习惯之后,不仅对编程很有帮助,也非常有益于我们今后的学习和生活,对提高小朋友们的逻辑思维能力有很多帮助。
那好,就让我们问下Python有没有什么函数可以帮助我们快速的查找到列表中的元素吧?
嗯,Python还真的提供了方法帮助我们查找呢~
巧用in关键字
如果想要找出某个元素是否在列表中,可以使用in关键字,比如可以这样
“O” in letters 这句代码是一个布尔表达式。如果“O”在列表中,则返回True,否则返回False。
木辛博士说
布尔(boolean)是一种只使用两个值(1和0,True和False)的算术运算。这是数学家 乔治·布尔发明的;用and,or和not来结合True和False条件进行的布尔运算。
查找索引
为了找出一个元素位于列表中的什么位置,也可以使用index()函数,比如像这样:
我们查找了一下“c“这个元素,Python告诉我们它在索引为2的位置;我们又查找了“z”这个元素,Python则提示我们z不存在于这个列表。
嗯嗯,还是那个原则,咱们无法操作不存在的元素,只能处理存在的元素!
上一个例子,因为不存在’z’这个元素,IDLE报出了红色错误,我们如果想让程序稳定的运行,是不能有类似错误的,这应该怎么办呢?
小朋友们有没有想到:in函数可以得到某个元素是否存在于列表中,而index函数可以得到这个元素所在列表的位置;那么如果我们结合两者使用,是不是会得到很健壮的代码呢?
木辛博士说
计算机科学中,健壮性(英语:Robustness)是指一个计算机系统在执行过程中处理错误,以及算法在遭遇输入、运算等异常时继续正常运行的能力。 诸如模糊测试之类的形式化方法中,必须通过制造错误的或不可预期的输入来验证程序的健壮性。很多商业产品都可用来测试软件系统的健壮性。健壮性也是失效评定分析中的一个方面。
问题的本质就是:我们需要先知道到这个元素是否存在与这个列表中,然后再通过函数获取到他的位置;如果不存在,则不需要去查找他的位置了。
那么程序应该这么写:
这样是不是就增强了咱们程序的健壮性了呢?
我们最早开始讨论循环的时候学到:循环可以完成一个值列表的迭代处理。还了解了range函数,并用它作为快捷方式为循环生成数字列表。不过呢,循环完全可以迭代处理任何列表,不仅限于数字列表哟!
比如像我们今天学习的内容:
通过我们这里的循环迭代,是不是把字符列表中的每个元素都打印出来了呀!
有的小朋友问,我们开始创建这个字符列表的时候是按照字母的顺序建立的,如果没有按照字母的顺序,但是想按照字母顺序输出,该怎么做呢?
嗯,这个问题问的好!
这就涉及到了列表排序的问题了,事实上列表是一种有顺序的结合。
这也说明列表中的元素有某种顺序,每个元素都有自己的位置,也就是他的索引。一旦以某种顺序将元素放在列表中,他们就会保持这种顺序,除非使用insert() append() remove() 和 pop()改变列表。
在Python里边对列表排序可以使用
嗯嗯,经过我们的测试,程序执行的效果确实和我们的预期是一致的!非常棒,我们又掌握了一些新的知识了!
好了,今天的课程就到这里了,咱们回顾一下学到的内容吧
小朋友们不要忘记关注我们哟 ,下期课程会带领大家学习Python中函数的概念:《10分钟学会使用函数,让我们的程序更整洁》
快乐编程,快乐成长,咱们下次课再见!
留言与评论(共有 0 条评论) |