List列表基本操作
一、任务描述
本实验任务主要完成基于Python的环境搭建,对List列表进行基本操作,通过完成本实验任务,要求学生熟练掌握List函数和List方法,并对List的基本操作进行整理并填写工作任务报告。
二、任务目标
1、掌握List的函数
2、掌握List的语法及内置函数
三、任务环境
Ubuntu16.04、Python2.7
四、任务分析
列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
♥ 知识链接 |
♥ 温馨提示 |
List列表是方括号,圆括号是元祖,大括号是字典 |
五、任务实施
步骤1、环境准备
右击Ubuntu操作系统桌面,从弹出菜单中选择【Open in Terminal】命令 打开终端。
在弹出的终端中输入【ipython】进入Python的解释器中。
步骤2、List列表创建
列表的多种创建方式,可以为数字,字符串,也可是二者的结合,如图2所示
【list1 = [1,2,3,4,5]】数字列表
【list2 = [‘a’,’b’,’c’,’d’]】字符串列表
【list3 = [‘simpleedu’,123,’shiyanbar’,456]】字符串与数字列表
获取list的元素值,如图3所示。
【list1[0]】获取list1下标为0的元素值
【list2[1:5]】获取list2下标为1与下标为5的元素值
修改元素值,如图4所示。
【list3[2] = ‘simpleware’】修改list3下标为2的元素值
删除元素,如图5所示。
【del list1[2]】删除list1下标为2的元素值
列表的长度,如图6所示。
【len([1,2,3,4,5])】列表的长度
【 [1,2,3] + [4,5,6]】列表相加
【[‘Hi!’] * 4】列表乘
逻辑判断,如图7所示。
【3 in [1,2,3]】逻辑判断
【for x in [1,2,3]:print x】迭代
列表截取,如图8所示。
【aList[-2]】截取下标为-2的元素值
【aList[1:]】截取下标1及以后的元素值
步骤3、List列表内置函数
【cmp()】 方法用于比较两个列表的元素。如图9所示。
返回值:
如果比较的元素是同类型的,则比较其值,返回结果。
如果两个元素不是同一种类型,则检查它们是否是数字。
如果是数字,执行必要的数字强制类型转换,然后比较。
如果有一方的元素是数字,则另一方的元素”大”(数字是”最小的”)
否则,通过类型名字的字母顺序进行比较。
如果有一个列表首先到达末尾,则另一个长一点的列表”大”。
如果用尽了两个列表的元素而且所有元素都是相等的,那么结果就是个平局,就是说返回一个 0。
【len()】 方法返回列表元素个数,如图10所示。
【max()】 方法返回列表元素中的最大值。
【min()】 方法返回列表元素中的最小值。如图11所示。
【list()】 方法用于将元组转换为列表。如图12所示。
注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。
步骤4、List列表内置方法
【append() 】方法用于在列表末尾添加新的对象。如图13所示。
该方法无返回值,但是会修改原来的列表。
【count() 】方法用于统计某个元素在列表中出现的次数。如图14所示。
返回元素在列表中出现的次数。
【extend()】 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。如图15所示。
该方法没有返回值,但会在已存在的列表中添加新的列表内容。
【index()】 函数用于从列表中找出某个值第一个匹配项的索引位置。如图16所示。
该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。
【insert()】 函数用于将指定对象插入列表的指定位置。如图17所示。
该方法没有返回值,但会在列表指定位置插入对象。
【pop() 】函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。如图18所示。
【remove()】 函数用于移除列表中某个值的第一个匹配项。如图19所示。
该方法没有返回值但是会移除两种中的某个值的第一个匹配项。
【reverse()】 函数用于反向列表中元素。如图20所示。
该方法没有返回值,但是会对列表的元素进行反向排序。
【sort()】 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。如图21所示。
该方法没有返回值,但是会对列表的对象进行排序。