lamda
语法:
函数名 = lambda 参数: 返回值
注意:
1. 函数的参数可以有多个. 多个参数之间⽤逗号隔开
2. 匿名函数不管多复杂. 只能写⼀⾏, 且逻辑结束后直接返回数据
3. 返回值和正常的函数⼀样, 可以是任意数据类型
例子:
f = lamda x : x** 2 # 求x的平方
print(f(10)) # 结果是100
sorted 排序函数
语法: sorted(Iterable, key=None, reverse=False)
Iterable: 可迭代对象
key: 排序规则(排序函数), 在sorted内部会将可迭代对象中的每⼀个元素传递给这个函
数的参数. 根据函数运算的结果进⾏排序
reverse: 是否是倒叙. True: 降序, False: 升序(默认)
例1:
lst = [1,5,3,4,6]
lst2 = sorted(lst)
print(lst) # 原列表不会改变
print(lst2) # 返回的新列表是经过排序的
例2:
lst = ["麻花藤", "冈本次郎", "*情报局", "狐仙"]
# 计算字符串⻓度
def func(s):
return len(s)
print(sorted(lst, key=func)) #按字符串长度进行排序
filter
筛选函数
语法: filter(function. Iterable)
function: ⽤来筛选的函数. 在filter中会⾃动的把iterable中的元素传递给function. 然后
根据function返回的True或者False来判断是否保留此项数据
Iterable: 可迭代对象
例:
lst = [1,2,3,4,5,6,7]
ll = filter(lambda x: x%2==0, lst) # 筛选所有的偶数
print(ll)
print(list(ll))
map()
映射函数
语法: map(function, iterable) 可以对可迭代对象中的每⼀个元素进⾏映射. 分别取执⾏
function
例:
print(list(map(lambda x: x * x, [1, 2, 3, 4, 5])))