1 列表合并
不用for循环,可以直接用+或extend方法
a=[1,2,3];b=[4,5,6]
a+b
或 a.extend(b)
[1,2,3,4,5,6]
如果列表很大的话,+会比较慢,使用extend更好
2 列表元素去重
使用set()对列表元素进行去重
a=[1,2,3,4,2,3]
list(set(a))
3 列表排序
使用sort或内建函数sorted对列表进行排序,它们之间的区别有两点:
a sort()方法是对原列表进行操作,而sorted()方法会返回一个新列表
b sort()是应用列表上的方法,而sorted()可以对所有可迭代的对象进行排序
默认是升序,可以变为降序
a.sort(reverse=True) #降序
4 遍历列表的索引和元素对
使用enumerate()函数可以同时输出索引和元素值
a=["python","study"]
for i ,v in enumerate(a):
print(i,v)
5 查找列表中出现频率最高的元素
使用max()函数可以快速查找出一个列表中出现频率最高的元素
b=max(set(a),key=a.count)
6 统计列表中所有元素的出现次数
如果想知道列表中所有元素的出现次数,可以使用collections模块。collections模块是python中的一个宝藏模块,它提供了很多针对序列的操作方法。
counter方法正好可以完美解决这个需求。Counter返回一个字典
import random
import collections
lista=[]
for i in range(15):
lista.append(random.randint(1,10))
print(lista)
dicta=dict(collections.Counter(lista))
print(dicta)
#结果
[1, 6, 7, 1, 2, 1, 9, 7, 4, 5, 7, 10, 6, 5, 5]
{1: 3, 6: 2, 7: 3, 2: 1, 9: 1, 4: 1, 5: 3, 10: 1}
7 将两个列表合并为字典
a=[1,2,3]
b=["one","two","three"]
dict(zip(a,b))
{1:"one",2:"two",3:"three"}
8 去掉一个最小值和一个最大值操作
a=[4,5,6,1]
minx,*mid,maxx=sorted(a)
print(mid)
[4,5]
算平均值 sum(mid)/len(mid)
4.5
9 忽略点模型元素(用下划线实现)
a=[4,5,6,1]
minx,_,*mid,maxx=sorted(a)
忽略掉第二小的元素
print(mid) ====>5