-
二.列表的使用
-
- 1. 获取指定的元素
-
- a) 获取类表中的指定元素的索引
-
b) 获取列表中的单个元素
-
2. 列表查询操作
-
- a) 切片操作
-
b)查询操作
-
c) 列表元素遍历
-
3. 列表元素的增加操作
-
4. 列表元素的删除
-
5. 列表元素的修改
-
6. 列表的排序操作
-
7. 列表生成式
-
总结
1.为什么要使用列表?
我们都知道变量可以存储一个元素,而列表是一个大容器,可以存储N个元素,程序可以方便的对这些元素进行操作。
列表相当于其他语言中的数组,如果你没有了解过其他语言,这句话可以略过。
在Python中一切皆为对象,所以变量存储的就是一个对象的引用。
2. 列表的内存示意图讲解
列表示意图:
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
a=20
lst=[‘hello’,‘world’,2021]
print(id(lst))
print(type(lst))
print(lst)
示意图:
假如一个列表是lst=[hello,world,100,20] 4个元素
3. 列表对象的创建
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
#c创建列表的第一种方式
lst=[‘hello’,‘world’]
#创建列表的第二种方式,使用内置函数list()
lis2=list([‘hello’,‘world’])
列表的特点:
-
列表元素按照有序排序
-
索引映射唯一一个数据
-
列表可以重复存储数据
-
任意数据类型混存
-
根据需要动态分配和回收内存
1. 获取指定的元素
a) 获取类表中的指定元素的索引
根据索引获取指定的元素
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[‘hello’,‘world’,38,‘itlaoxin’]
print(lst.index(‘hello’))
print(lst.index(38,1,4))
在索引为1-4里查找元素38,结果为2
b) 获取列表中的单个元素
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[‘hello’,‘world’,38,‘itlaoxin’,‘hello’,‘world’,234]
print(lst[2]) #38
print(lst[-3])#hello
print(lst[0]) #hello
#print(lst[10]) #超出范围报错
print(lst[-1]) #234
2. 列表查询操作
a) 切片操作
步长为正数的时候:
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4,5,6,7,8,9,]
print(lst[1:6:1]) #[2, 3, 4, 5, 6]
lst[1:6:1] 表示: 从索引1开始到索引6结束,步长为1,一般默认步长为1
其他写法:
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4,5,6,7,8,9,]
print(lst[1:6:1]) #[2, 3, 4, 5, 6]
print(lst[1:6])
print(lst[1:6:])
print(lst[1:6:2])
print(lst[:6:2])
结果:
步长为负数的情况
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4,5,6,7,8,9,]
print(lst[::-1])
这种情况相当于取反
这种写法也可以:
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4,5,6,7,8,9,]
print(lst[8::-1]) #[9, 8, 7, 6, 5, 4, 3, 2, 1]
b)查询操作
判断指定元素是否在列表中存在
-
元素in 列表名
-
元素 not in 列表名
c) 列表元素遍历
for 可迭代变量 in 列表
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4,5,6,7,8,9,]
for item in lst:
print(item)
3. 列表元素的增加操作
列表元素的增加操作:
append() 在列表末尾加一个元素
extend() 在列表末尾添加一个元素
insert() 在列表的任意位置添加一个元素
切片: 在列表的任意位置添加一个元素
append()
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3]
print(“添加元素之前”,lst,id(lst))
lst.append(100)
print(‘添加元素之后’,lst,id(lst))
可以看到,ID是相同的,也就是没有生成新的列表
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3]
print(“添加元素之前”,lst,id(lst))
lst.append(100)
print(‘添加元素之后’,lst,id(lst))
lst2=[‘hello’,‘world’]
lst.append(lst2)
print(lst)
输出:
可以看到这里,将lst2作为一个元素添加到末尾
extend()
这个是扩展
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3]
lst2=[‘hello’,‘world’]
print(lst)
lst.extend(lst2)
print(lst)
insert() 是在任意位置上添加
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3]
lst.insert(2,90)
print(lst)
切片也可以在任意位置添加元素
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4]
lst3=[‘hello’,‘world’,‘itlaoxin’]
lst[1:]=lst3
print(lst)
可以看到,它把索引1后面的都切掉了,然后把lst3添加到lst里了
切片实际上就是切掉一部分,用新的替换。
4. 列表元素的删除
- remove()
一次删除一个元素,重复元素只删除第一个,元素不存在抛出valueerror
- pop()
删除一个指定索引位置上的元素
指定锁定不抛出indexError
不指定索引,删除列表中的最后一个元素
-
切片: 一次至少删除一个元素(切片会产生一个新的列表对象)
-
clear() 清空列表
-
del() 删除列表
作者:互联网老辛
开发时间:2021/4/3/0003 18:38
lst=[1,2,3,4]
lst.pop(2)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
[外链图片转存中…(img-Rsgos3Xx-1712965148657)]
[外链图片转存中…(img-SdR01ZAc-1712965148658)]
[外链图片转存中…(img-oGp2QvBs-1712965148658)]
[外链图片转存中…(img-GX2v1DH1-1712965148658)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)