python3 列表操作
- 创建列表
#创建列表: list1 = [1, 2, 3, 4, 5]
- 向列表中添加元素
- append
# 向列表中添加元素: list1 = [1, 2, 3, 4, 5] list1.append(6) list1 [1, 2, 3, 4, 5, 6]
# 使用append向列表中添加多个元素 list1 = [1, 2, 3, 4, 5] list1.append(6, 7) list1 File "<ipython-input-7-12eec7711550>", line 4 list1.append(6, 7) ^ SyntaxError: invalid character in identifier
# 这里发现无法使用append添加多个元素,所以需要下面的extend
- extend
# 向列表中增加列表内容: list1 = [1, 2, 3, 4, 5] list1.extend([6, 7, 8]) # 注意这里追加的是一个列表 print(list1) [1, 2, 3, 4, 5, 6, 7, 8]
- 从列表中获取元素
- 单层列表元素的获取
# 获取单层列表中的元素 list1 = [1, 2, 3, 4, 5] list1[0] 1
- 双层列表元素的获取
# 获取双层列表中的元素 list1 = [1, 2, 3, 4, [5, 6]] list1[4][0] 5
- 从列表中删除元素
- remove
# 使用remove搜索第一个该元素并删除 list1 = [1, 2, 3, 4, 5] list1.remove(2) list1 [1, 3, 4, 5]
- pop
# 使用pop弹出元素,如果不指定默认弹出最后一个元素 list1 = [1, 2, 3, 4, 5] list1.pop(1) list1 [1, 3, 4, 5]
- del
# 使用del删除指定下标元素 list1 = [1, 2, 3, 4, 5] del list1[1] list1 [1, 3, 4, 5]
- 列表的分片
- 普通分片
# 普通分片 # 注意左边的下标从0开始,右边的下标=下标值 - 1 list1 = [1, 2, 3, 4, 5] print(list1[1:5]) [2, 3, 4, 5]
- 高级分片
- 间隔分片
# 间隔分片 list1 = [1, 2, 3, 4, 5] list2 = list1[0:5:2] print(list2) [1, 3, 5]
- 翻转分片
# 翻转分片 list1 = [1, 2, 3, 4, 5] list3 = list1[::-1] print(list3) [5, 4, 3, 2, 1]
- 列表元素的插入
# 列表中元素的插入 list1 = [1, 3, 4, 5] list1.insert(1, 2) print(list1) [1, 2, 3, 4, 5]
- 列表成员操作符
# 成员操作符 list1 = [1, 2, 3, 4, 5] print(6 in list1) print(5 in list1) False True
- 列表元素的计数
# 列表元素计数 list1 = [1, 1, 2, 3, 3, 3, 4, 5] count1 = list1.count(3) print(count1) 3
- 列表元素的翻转
# 列表中元素的翻转 list1 = [1, 2, 3, 4, 5] list1.reverse() print(list1) [5, 4, 3, 2, 1]
- 列表元素的排序
# 列表中元素的排序(默认为从小到大) list_A = [5, 4, 3, 2, 1] list_B = [1, 2, 3, 4, 5] list_A.sort() list_B.sort(reverse=True) print(list_A) print(list_B) [1, 2, 3, 4, 5] [5, 4, 3, 2, 1]
- 显示列表元素下标
# 显示列表中第一个该元素的下标 list1 = [1, 2, 3, 4, 5] print(list1.index(3)) 2
- 关于列表分片的补充
# 关于列表的切片其实是复制此列表产生新列表 # 如果只是简单的基于列表的指向,则修改B列表会影响A列表本身 # 如果是基于切片复制的,则修改此列表并不会对原列表产生影响 list1 = [1, 2, 3, 4, 5] list2 = list1[:] list3 = list1 list2.reverse() print(list1) print(list2) print(list3) print(id(list1)) print(id(list2)) print(id(list3)) [1, 2, 3, 4, 5] [5, 4, 3, 2, 1] [1, 2, 3, 4, 5] 4350409736 4351221640 4350409736
你可以迷茫,但不可以虚度。