04列表(包含三目运算符)

本文详细介绍了Python中的列表,包括其可变性、有序性以及元素类型不限的特点。重点讲解了列表的查、增、删、改操作,如下标访问、切片、遍历、append、insert等。还涵盖了列表的加法、乘法运算,比较运算,in和not in操作。此外,探讨了列表相关函数如sum、max、min、sorted和len,以及列表方法如clear、count、extend等。最后,文章提到了列表拷贝和列表推导式,并简单介绍了Python的三目运算符。
摘要由CSDN通过智能技术生成

一、列表

1.认识列表(list)

1)列表是容器型数据类型(序列);将[]作为容器标志,里面多个数据用逗号隔开:[数据1,数据2,数据3,…]

2)列表是可变的(可变指的是列表中元素的个数和元素的值可变–列表支持增删改)

​ 列表是有序的(元素有顺序对应的位置的信息,元素的顺序影响结果–列表支持下标操作)

​ 列表对元素的要求:没有要求,任何类型的数据都可以作为列表的元素。

注:元素–容器中每一个独立的数据,就是这个容器的元素

2.列表

1)空列表 list1 = []

2)列表是有序的;集合是无序的,顺序不影响结果

3)列表元素可以是任何类型的数据

1.列表的查操作

1.查单个 – 一次获取一个元素

1)语法:列表[下标]

2)说明:需要获取元素的列表对象(可以是保存一个列表的变量,也可以是具体的列数据)。索引是元素在列表中的位置信息。列表一旦确定,列表中每个元素对应的索引就确定了。

​ a.元素从前往后索引从0开始不断增加

​ b.元素从后往前从-1开始不断减少

2.切片 – 同时获取多个元素(列表切片的结果是列表)

1)完整语法:列表[开始下标:结束下标:步长]

2)说明:开始下标,结束下标和步长必须是整数,步长决定取的时候怎么取,是一个一个按顺序取还是跳着取。是从前往后取还是从后往前取。

3)使用切片

a.确定切片结果

第一步:先确定结果是否为空,看开始下标对应的位置到结束下标对应的位置的方向和步长的方向是否一致。一致,结果不为空,不一致,结果一定为空。

第二步:如果结果不为空,再确定切片的有效范围,开始下标对应的元素能取到,结束下标对应元素取不到。

第三步:在有效范围内,按照步长的方向和绝对值获取元素。

​ 方向:步长为正,从开始下标到结束下标从前往后取;步长为负就从后往前取

​ 绝对值:绝对值为1,就1个1个的取;绝对值为2,取1个跳过1个再取1个;绝对值为3,取一个跳2个再取1个;。。。

movies = ['肖生克的救赎', '霸王别姬', '阿甘正传', '钢铁侠', '蜘蛛侠', '蝙蝠侠', '蚁人', '雷神', '复仇者联盟']
print(movies[1:-1:1])#['霸王别姬', '阿甘正传', '钢铁侠', '蜘蛛侠', '蝙蝠侠', '蚁人', '雷神']
print(movies[-1:1:-2]) #['复仇者联盟','蚁人','蜘蛛侠','阿甘正传']
print(movies[-2:5:2]) #[]
print(movies[0:-2:4])#['肖生克的救赎','蜘蛛侠']
print(movies[5:-1:2]) #['蝙蝠侠','雷神']
print(movies[6:-6:-1]) #['蚁人','蝙蝠侠','蜘蛛侠']

b.怎么写切片代码获取指定的元素

确定开始下标:需要的结果中第一个数据在列表的下标

确定结束下标:结束下标是结果中最后一项的后一项数据或者前一个数据的下标(看方向)

确定步长:正负看趋势(从前往后取还是从后往前取);再看绝对值(看取的时候是一个一个取的,还是跳着取的)

4)切片省略的写法

a.省略步长:–相当于步长为1

列表[开始下标:结束下标]

b.省略开始下标: --获取元素从头开始取(步长为正,从第一个元素开始;步长为负,从最后一个元素开始)

列表[:结束下标:步长]

print(movies[:-2:2]) # '肖生克的救赎','阿甘正传','蜘蛛侠','蚁人'
print(movies[:2:-2])#'复仇者联盟', '蚁人','蜘蛛侠'
print(movies[:4])#'肖生克的救赎', '霸王别姬', '阿甘正传', '钢铁侠'

c.省略结束下标:-- 获取元素的时候从开始下标开始,取完为止(有可能是取最后一个,也有可能是取第一个)

movies = ['肖生克的救赎', '霸王别姬', '阿甘正传', '钢铁侠', '蜘蛛侠', '蝙蝠侠', '蚁人', '雷神', '复仇者联盟']
print(movies[2::2])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值