标签:sort 了解 reduce 出现 lambda函数 数据 reverse min port
常用内置函数
lst = [{'id':1,'name':'alex','age':18},
{'id':1,'name':'wusir','age':17},
{'id':1,'name':'taibai','age':16},
]
ls = filter(lambda e:e['age'] > 16,lst)
print(list(ls))
结果:
[{'id': 1, 'name': 'alex', 'age': 18},
{'id': 1, 'name': 'wusir', 'age': 17}]
lis = [1, 2, 3, 4, 5]
lis1 = []
for i in lis:
def square(x): # 计算平方数
return x ** 2
a = square(i)
lis1.append(a)
print(lis1)
结果:[1, 4, 9, 16, 25]
def square(x): # 计算平方数
return x ** 2
a = map(square, [1, 2, 3, 4, 5]) # 计算列表各个元素的平方
print(list(a))
结果:[1, 4, 9, 16, 25]
a = map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函
print(list(a))
结果:[1, 4, 9, 16, 25]
from functools import reduce
def func(x,y):
return x + y
ret = reduce(func,[3,4,5,6,7])
print(ret)
结果:25
匿名函数版
from functools import reduce
l = reduce(lambda x,y:x*10+y,[1,2,3,4])
print(l)
结果:1234
# x = 1,y = 2 12
# x = 12,y = 3 123
# x = 123,y = 4 1234
from functools import reduce
lis = [1, 2, 3, 4]
result = reduce(lambda x, y: x+y, lis)
print(result)
结果:10
from functools import reduce
str1 = "fufhfjhjfurfh"
b =reduce(lambda a,x:a+x.count("f"),str1,0) # 0是从0算起
print(b)
结果:5
from functools import reduce
str1 = "fufhfjhjfurfh"
b =reduce(lambda a,x:a+x.count("f"),str1,1) # 1是从1算起
print(b)
结果:6
a = [5, 7, 6, 3, 4, 1, 2]
b = sorted(a) # 保留原列表
print(b)
lis = [('b', 2), ('a', 1), ('c', 3), ('d', 4)]
b = sorted(lis, key=lambda x: x[1]) # 利用key
print(b)
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
b = sorted(students, key=lambda s: s[2]) # 按年龄排序
print(b)
b = sorted(students, key=lambda s: s[2], reverse=True) # 按降序
print(b)
结果:[1, 2, 3, 4, 5, 6, 7]
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
print(max([1,2,3])) # 返回此序列最大值
ret = max([1,2,-5,],key=abs) # 按照绝对值的大小,返回此序列最小值
print(ret)
# 加key是可以加函数名,min自动会获取传入函数中的参数的每个元素,然后通过你设定的返回值比较大小,返回最大的传入的那个参数。
print(max(1,2,-5,6,-3,key=lambda x:abs(x))) # 可以设置很多参数比较大小
dic = {'a':3,'b':2,'c':1}
print(max(dic,key=lambda x:dic[x]))
# x为dic的key,lambda的返回值(即dic的值进行比较)返回最大的值对应的键
print(min([1,2,3])) # 返回此序列最小值
ret = min([1,2,-5,],key=abs) # 按照绝对值的大小,返回此序列最小值
print(ret)
# 加key是可以加函数名,min自动会获取传入函数中的参数的每个元素,然后通过你设定的返回值比较大小,返回最小的传入的那个参数。
print(min(1,2,-5,6,-3,key=lambda x:abs(x))) # 可以设置很多参数比较大小
dic = {'a':3,'b':2,'c':1}
print(min(dic,key=lambda x:dic[x]))
# x为dic的key,lambda的返回值(即dic的值进行比较)返回最小的值对应的键
Python 内置函数&filter()&map()&reduce()&sorted()
标签:sort 了解 reduce 出现 lambda函数 数据 reverse min port
原文地址:https://www.cnblogs.com/shenhongbo/p/11572061.html