列表相关函数
一、 列表
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
1.sort()原址排序(正序)
list1 = [1,3,5,2,1,23,33,8] list1.sort() print (list1)
当参数reverse=True时为倒序排序
list1 = [1,3,5,2,1,23,33,8] list1.sort(reverse=True) print (list1)
2.reverse()用于反向列表中元素。
list1 = [1,3,5,2,1,23,18] list1.reverse() print (list1)
3.count()统计元素出现的次数
list_1=[1,4,7,9,5,4,6,67,5,34] num_1=list_1.count(4) print(num_1)
str_1="hello_shenzhen" str_2=str_1.count("h") print(str_2)
English = ["90","95","98","90","90","95"]
x = English.count("90")
y = English.count("95")
z = English.count("98")
print ("90分共%d人,95分共%d人,98分共%d人"%(x,y,z))
4.insert(index,x) 将指定对象插入列表的指定位置
insert可以通过索引将值添加到任意位置,既可以往列表中添加单个元素也可以往列表中添加一个序列(但是添加序列后结果是一个多维列表)
list_1=[1,34,5,45,3,76]#原列表
#列表 list_1 索引号为 3 的位置插入元素 5354 list_1.insert(3,5254) print(list_1)
#列表 list_1 索引号为 0 的位置插入序列list_2 list_2=[88,'er'] list_1.insert(0,list_2) print(list_1)
5.append()用于在列表末尾添加新的对象。既可以往列表末尾添加单个元素也可以往列表末尾添加一个序列
list_1=[1,4,7,9,5,4,6,67,5,34,'e'] list_1.append('zzzz')#往列表尾部添加元素 print(list_1)
#往列表 list_1 中添加序列 list_1.append([5,6,"s"]) print(list_1)
list_1.append((9,8,7)) print(list_1)
list_1=[1,4,7,9,5,4,6,67,5,34,'e'] list_1.append({'sd':45}) print(list_1[-1])
list_1=[1,4,7,9,5,4,6,67,5,34,'e'] list_1.append('中文') print(list_1)
6.extend()用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list_1=['guangzhou','shenzhen','zhuhai'] list_2=['beijing','shanghai','hanghzou'] #合并两个列表 list_1.extend(list_2) print(list_1)
7.set()去重
list1 = [1,3,4,6,1,3,5,1,5,6] list2 = set(list1)#去重 print (list2) print (type(list2)) print (list(list2))#把集合转化为字典
8.pop()用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list_1=[1,4,7,5,5,6,4,9,5,4,6,67,5,34,'e'] a=list_1.pop()#删除并返回值,把值存在变量a在 print(a) list_1.pop() print(list_1)#删除后直接打印列表
num_1=[2,3,5,6,7] a=num_1.pop() print(a) b=num_1.pop() print(b) print(a+b)
#通过索引值指定删除某个值
list_1=[1,4,7,5,5,6,4,9,5,4,6,67,5,34,'e'] list_1.pop(2) print(list_1)
9.remove()移除列表中某个值的第一个匹配项
remove 删除是通过列表中元素值进行删除,删除后没有返回值
list_1 = ['zhangsan','lisi','wangwu','zhaoli','sunqi','lisi'] #移除第一个 lisi list_1.remove('lisi') print (list_1)
10.del 删除表中元素
通过索引值删除
list_1 = ['zhangsan','lisi','wangwu','zhaoli','sunqi','lisi'] del list_1[1] print (list_1)
修改里列表的元素
list_1 = ['zhangsan','lisi','wangwu','zhaoli','sunqi','lisi'] list_1[1]='hello_shenzhen' print (list_1)
list_1 = ['zhangsan','lisi','wangwu','zhaoli','sunqi','lisi'] list_1[1:2]='hello_shenzhen','great'#索引数量大于插入元素数量,元素在后面依次排列。(超过则对应元素被删除) print (list_1)