第五、六讲 列表和元组
本篇博客URL:https://blog.csdn.net/wa_aw_wa/article/details/104962363
文章目录
一、序列
1.序列概述
(1)序列是Python中最基本的数据结构。序列中的每个元素都分配
一个数字-它的位置,或索引,第一个索引是0 ,第二个索引是1,依此类推。
(2)Python中,常见序列有列表、元组、字符串。序列可以进行的操作,有索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的
元素的方法。
(3)列表是最常用的Python数据类型,它可以作为一个方括号内的
适导分隔值出现。
(4)列表的数据项不需要具有相同的类型。
(5)创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起
来即可。
2.概念
(1)索引:从0开始,最后是-1,数据类型为整形(int)
(2)元素:列表和元组的元素可以是不同数据类型,可重复。
3.通用序列操作
索引
切片
序列相加
乘法
常用内置函数:
长度 len()
最小值 min()
最大值 max()
二、列表
1.列表元素特点:
可修改,可重复,可嵌套,支持多种数据类型
2.函数 list()
3.列表基本操作
(1)创建
name = list()或[]或[1,2]或[1,[1,2]]
(2)增加
append()
描述:用于在列表末尾添加新的对象
语法:
list.append(obj)
参数:obj–添加到列表末尾的对象
返回值:无返回值,会修改原列表
extrnd()
描述:用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。
语法:
list.extend(seq)
参数:seq–元素列表
返回值:无返回值,会在已存在的列表中添加新的列表内容。
insert()
描述:用于将制定对象插入列表的指定位置
语法:
list.insert(index,obj)
参数:index–对象obj需要插入的索引位置
obj–需要插入列表中的对象
返回值:有返回值,会在列表指定位置插入对象
(3)删除
del
描述:用于删除列表或一个或者连续几个元素
语法:
del name #name 列表名
del name(0)
clear()
描述:清空地址内容
语法:
list.clear()
pop()
描述:用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
语法:
list.pop([index=-1])
参数:index–可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为index=-1即最后一个列表值。
返回值:返回从列表中移除的元素对象
remove()
描述:用于移除列表中某个值的第一个匹配项
语法:
list.remove(obj)
参数:obj–列表中要移除的对象
(4)修改
name[1]=2
(5)查找
count()
描述:用于统计某个元素在列表中出现的次数,会返回元素在列表中出现的次数
语法:
list.count(obj)
参数:obj–列表中统计的对象
index()
描述:用于从列表中找出某个值第一个匹配项的索引位置
语法:
list.index(obj)
参数:obj为查找的对象
内置函数:min(),max(),len(),in,not in
(6)翻转
reverse()
描述:用于反向列表中的元素
语法:
list.reverse()
(7)排序sort()
用于对原列表进行排序,可指定参数(Python3中数据类型必须相同)
list.sort(cmp=None, key=None, reverse=False)
三、元组
1.元组
(1)元组与列表类似,不同之处在于元组的元素不能修改。
(2)元组使用小括号,列表使用方括号。
(3)元组的创建很简单,只需要在小括号中添加元素,并使用逗号分隔即可。
2.元组元素特点
元组元素特点:可重复,不可修改,可嵌套,支持多种数据类型。
四、课堂回顾
1.列表的形式及元素特点是什么
列表在方括号内,元素以逗号分隔。
列表元素特点:可重复,可修改,可嵌套,支持多种数据类型。
2.元组的形式及元素特点是什么
元组在小括号内,使用逗号分隔。
元组元素特点:可重复,不可修改,可嵌套,支持多种数据类型。
3.列表与元组的区别四什么
元组与列表不同之处在于元组的元素不能修改。
五、程序分析
lst = [1,2,3,4,5,0,2,1,-8,6]
lst.sort()
print("lst = ",lst)
print("min(lst) = ", min(lst))
print("max(lst) = ", max(lst))
print("len(lst) = ", len(lst))
lst = [1, 2, 3, 4, 5, 0, 2, 1, -8, 6]
sorted(lst)
print("lst =" , lst)
运行结果截图
分析:序列长度、最大值、最小值
2.
lst = [1,2,3,4,5,0,2,1,-8,6]
print("lst[0] = ",lst[0])
print("lst[-1] = ",lst[-1])
print("lst[-3] = ",lst[-3])
print("lst[3] = ",lst[3])
print("lst[:2] = ",lst[:2])
print("lst[:-1] = ",lst[:-1])
print("lst[::2] = ",lst[::2])
print("lst[::3] = ",lst[::3])
print("lst[100:] =",lst[100:])
运行截图
3.
lst = [0, 2, 1, 2, 6, 6, 1]
print("lst.count(1) = ", lst.count(1))
print("lst.index(2) =", lst.index(2))
lst = [1, 2]
print("lst*3 = ", lst*3)
lst = [1, 2, 3]
lst.reverse()
print("lst = ", lst)
4.
lst = [1, 2, 3]
reversed(lst)
print("lst = ", lst)
lst1 = [1, 2]
lst2 = [3, 4]
print("lst1 + lst2 = ", lst1 + lst2)
lst = [1, 2, 3]
print("3 in lst = ", 3 in lst)
print("6 in lst = ", 6 in lst)
六、作业
1.删除列表中的重复元素
(1)创建列表
name = [0,1,2,3,4,5,6,7,8,9,10,9,8,7,6,5,4,3,2,1,0]
print("列表",name)
(2)删除表中重复元素
name=set(name)
name=list(name)
print("删除重复元素后的列表",name)
2.实现对列表数据排序
name.sort(reverse=True)
print("列表降序排序",name)
name.sort(reverse=False)
print("列表升序排序",name)
3.获取列表中索引为偶数的元素
print("列表中索引为偶数的元素:",name[0::2])
4.获取列表中索引为奇数的元素
print("列表中索引为奇数的元素:",name[1::2])
5.运行结果
name = [0,1,2,3,4,5,6,7,8,9,10,9,8,7,6,5,4,3,2,1,0]
name=set(name)
name=list(name)
name.sort(reverse=True)
name.sort(reverse=False)
print("列表",name)
print("删除重复元素后的列表",name)
print("列表升序排序",name)
print("列表降序排序",name)
print("列表中索引为偶数的元素:",name[0::2])
print("列表中索引为奇数的元素:",name[1::2])