2.1列表相关知识点
列表示例:
names=[a,b,c,d]
1、切片功能
print(names[1:3])
显示:[b,c]
print(names[-3:-1])
显示:[b,c]
原理:顾头不顾尾
小技巧:
①若从头开始切,可省略前面数字:
print(names[:3])=print(names[0:3])
②若切到最后,需省略后面:
print(names[2:])
③带步长的切片(间隔切)
print(names[0:-1:2])
显示:[a,b]
2、增
①在列表后面增加元素:
names.append(“e”)
print(names)
显示:[a,b,c,d,e]
②在中间插入元素:
names.insert(1,"e")
print(names)
显示:[a,e,b,c,d]
PS:插入只能一个一个插入,不能批量插入、
3、改
names[2]="e"
print(names)
显示:[a,b,e,d]
4、删
删除列表中的元素有三种方法:
①names.remove("d")
print(names)
显示:[a,b,c]
②del names[1]
print(names)
显示:[a,c,d]
③names.pop()
print(names)
显示:[a,b,c]
若③输入下标,则③的效果和②一样
5、查
①已知元素,查下标
print(names.index("e"))
显示:3
②已知元素,查相同元素的数量
print(names.count("e"))
显示:1
6、列表的其他语法
①、clear清空列表
names.clear()
print(names)
显示:[]
②reverse反转元素
names.reverse()
print(names)
显示:[d,c,b,a]
③sort元素排序,排序规则:特殊字符>数字>大写字母>小写字母【ascii码的排序规则】
names.sort()
print(names)
显示:[a,b,c,d]
④extend扩展合并
names2=[e,f,g,h]
names=extend(names2)
print(names)
显示:[a,b,c,d,e,f,g,h]
⑤del删除整个列表
del names
⑥copy复制列表、copy模块
names2=names.copy()
copy为浅复制,若改动模板列表内的字符串元素,粘贴列表的相应字符串不会更改,若改动模板列表里的复杂元素(子列表、字典、元组),则粘贴列表的相应复杂元素也会改变(原理:若元素为复杂元素,则只粘贴一个内存指针)
若要强复制,需导入copy模块:
import copy
names2=copy.deepcopy(names)
此时为深复制