主要内容:
1、sorted()排序函数
2、filter()筛选函数
3、map()映射函数
一、sorted()排序函数
lst = [1,5,3,4,6]
lst2 = sorted(lst)
print(lst) # 原列表不不会改变
print(lst2) # 返回的新列表是经过排序的
dic = {1:'A', 3:'C', 2:'B'}
print(sorted(dic)) # 如果是字典. 则返回排序过后的key
lst = ['aaa','aaaaaa','aa','a']
#根据字符长短进行排序
def func(n):
return len(n)
print(sorted(lst,key=func))
lst = ['aaa','aaaaaa','aa','a']
#根据字符长短进行排序
print(sorted(lst,key=lambda n : len(n)))
lst1 = [{"id": "1", "age": 20, "name": "xiaoming"}, {"id": "2", "age": 22, "name": "xiaomhon"},
{"id": "3", "age": 21, "name": "xiaohua"}]
#根据lst1中的age,进行排序
print(sorted(lst1, key=lambda n:n['age']))
二、filter筛选函数
lst = [1,2,3,4,5,6,7]
# 筛选所有的偶数
ll = filter(lambda x: x%2==0, lst)
print(ll) #返回的是迭代器
print(list(ll))
lst1 = [{"id": "1", "age": 20, "name": "xiaoming"}, {"id": "2", "age": 22, "name": "xiaomhon"},
{"id": "3", "age": 21, "name": "xiaohua"}]
#筛选lst1中 age比20大的字典列表。
l1 = filter(lambda n: n['age'] > 20, lst1)
print(l1)
print(list(l1))
三、map映射函数
def square(x): # 计算平方
return x *x
lst = [1, 2, 3, 4, 5]
lst1 = map(square, lst)
print(lst1) #返回迭代器
print(list(lst1))
lst = [1, 2, 3, 4, 5]
lst1 = map(lambda n : n*n, lst)
print(list(lst1))
简写:
print(list(map(lambda n : n*n,[1, 2, 3, 4, 5])))
lst = [1, 2, 3, 4, 5]
lst2 = [2, 3, 4, 5, 6]
print(list(map(lambda x, y: x + y, lst, lst2)))
大家如果有什么问题可以评论下,互相交流哈。