Python列表进阶
2019-07-31 12:31
78 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_38768811/article/details/97896649
目录
1. 创建列表
[code]list_1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] # 创建列表方法1:将所有元素用方括号括起来赋值给列表 tuple_1 = (11, 12, 13, 14, 15, 16, 17, 18, 19) list_2 = list(tuple_1) print(list_2) # [11, 12, 13, 14, 15, 16, 17, 18, 19] # 创建列表方法2:使用list()函数将元组转换为列表 list_3 = list(range(4, 10)) print(list_3) # [4, 5, 6, 7, 8, 9] # 创建列表方法3:使用list()函数将区间转换为列表,注意不包括截止元素10
注:Python也提供一个tuple()函数将列表、区间range等转换为元组;其用法与lis()函数相同;
2. 增加列表元素
Python提供了三个函数用于增加元素,但每个函数的用法和结果不同:
1)append() 将传入的参数增加到列表的最后面,可接受单个值,也可接受元组、列表等,但只是将列表、元组等当成一个元素;
[code]list_1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] tuple_1 = (11, 12, 13) list_2 =[14, 15, 16] list_1.append(0) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] 增加单个值 list_1.append(tuple_1) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, (11, 12, 13)] 增加一个元组,元组被当作一个元素
2)extend() 用于将其他列表或元组或区间中的元素添加到列表中,不可添加单个元素;z
[code]list_1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] tuple_1 = (11, 12, 13) list_2 =[14, 15, 16] list_1.extend(tuple_1) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13] list_1.extend(range(20, 23)) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 20, 21, 22]
3)insert() 将元素插入列表的指定位置,通过“索引”指定位置;可插入单个元素,也可插入元组或列表,此时元组或列表被当作一个元素;
[code]list_1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] tuple_1 = (11, 12, 13) list_2 =[14, 15, 16] list_1.insert(2, 1000) print(list_1) # [1, 2, 1000, 3, 4, 5, 6, 7, 8, 9] list_1.insert(3, tuple_1) print(list_1) # [1, 2, 1000, (11, 12, 13), 3, 4, 5, 6, 7, 8, 9]
3. 删除列表元素
Python提供了三种方法用于删除列表元素:
1)del 通过索引可删除单个元素,也可删除中间的一段元素;
[code]list_1 = list(range(1, 20)) del list_1[5] print(list_1) # [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] 删除了元素6 del list_1[6:12] print(list_1) # [1, 2, 3, 4, 5, 7, 14, 15, 16, 17, 18, 19]
2)remove() 删除列表种找到的第一个元素,如果找不到该元素,程序将出错;
[code]list_1 = list(range(1, 20)) list_1.remove(15) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19]
3)clear() 清除列表所有元素;
[code]list_1 = list(range(1, 20)) list_1.clear() print(list_1) # []
4. 修改列表元素
1)通过索引直接赋值;
[code]list_1 = list(range(1, 10)) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9] list_1[3] = 1000 print(list_1) # [1, 2, 3, 1000, 5, 6, 7, 8, 9]
2)通过 [ 开始索引 : 结束索引 : 步长 ] 赋值
不要求新赋值的元素个数与原来的元素个数相等,表示这种方式即可为列表增加元素,也可删除元素;
[code]list_1 = list(range(1, 10)) print(list_1) # [1, 2, 3, 4, 5, 6, 7, 8, 9] list_1[2:4] = [1000, 2000] print(list_1) # [1, 2, 1000, 2000, 5, 6, 7, 8, 9] 新赋值的元素个数和原来的个数相同 list_1[2:4] = [3000, 4000, 5000, 6000] print(list_1) # [1, 2, 3000, 4000, 5000, 6000, 5, 6, 7, 8, 9] 新赋值的元素个数多于原来的个数 list_1[2:4] = [7000] print(list_1) # [1, 2, 7000, 5000, 6000, 5, 6, 7, 8, 9] 新赋值的元素个数少于原来的个数
指定步长时要求新赋值的元素个数与原来的元素个数相等;
5. 列表的其他常用方法
1)count() 统计列表中某个元素出现的次数;
2)index() 定位某个元素在列表中第一次出现的位置,如果该元素没有出现,则出现错误;
可以加入start、end等参数用于在列表的指定范围内搜索元素;
3)pop() 将列表当作“栈”使用;
4)reverse() 将列表中的元素反向存放;
5)sort() 对列表元素排序;默认为从小到大排序,可以修改默认参数reverse=True实现从大到小排序;
[code]list_1 = [1, 1, 2, 7, 9, 15, 9, 12, 15, 16] print(list_1.count(9)) # 2 print(list_1.index(9)) # 4 list_1.sort() print(list_1) # [1, 1, 2, 7, 9, 15, 9, 12, 15, 16] list_1.reverse() print(list_1) # [16, 15, 15, 12, 9, 9, 7, 2, 1, 1]
相关文章推荐
- Python进阶(一)-初识Python数据元素:列表&元组
- Python进阶(九):列表,元组,字典,集合的同异
- [Python入门及进阶笔记]Python-基础-列表及列表解析小结
- Python中list列表的一些进阶使用方法介绍
- Python中list列表的一些进阶使用方法介绍
- python 进阶学习:列表解析效率和timeit模块
- [Python入门及进阶笔记]Python-基础-列表及列表解析小结
- python3之列表进阶
- Python进阶02 元组、列表、字典和集合
- Python 进阶_迭代器 & 列表解析
- Python进阶 03 元组/列表/字典 互转
- 洗礼灵魂,修炼python(15)--列表进阶话题—>列表解析/列表生成器
- 3.Python进阶-切片+列表生成式+复杂表达式+条件过滤+多层表达式
- 进阶Python中的列表,元组,集合,字典!
- [Python学习]总结一下Cygwin安装与进阶学习列表
- [Python入门及进阶笔记]Python-基础-列表及列表解析小结
- Python 数据结构与算法——从某个列表中找出两个彼此最接近但不相等的数
- python 迭代 及列表生成式
- python之操作列表
- python中列表和字典排序