首先,先简单介绍一下lambda函数的用法
1、max(num, key=lambda x:x[0])语法介绍如下:
key=lambda 元素: 元素[字段索引]
print(max(C, key=lambda x: x[0]))
x:x[]字母可以随意修改,求最大值方式按照中括号[]里面的维度,[0]按照列表或元组的第一维个元素,[1]按照列表或元组的第二个元素取。
表示在num的三个列表元素取出索引值为第一个的最大值
已有字符串
str = "test jobs test work test jobs",统计出字符串中单词出现的个数,并按个数进行倒序排列
代码如下:
str1 = "test jobs test work test jobs"
def func(data):
# 按空格对字符串进行切割
data = data.split(' ')
print(data)
# 使用列表推导式,去重并统计切割后列表里的单词及重复个数,
new_data = [[i,data.count(i)]for i in set(data)]
print(new_data)
# lambda是一个隐函数,是固定写法,不要写成别的单词;x表示列表中的一个元素,
# 在这里,表示一个元组,x只是临时起的一个名字,你可以使用任意的名字;
# x表示列表里的第一组元素,x[0]表示元组里的第一个元素,当然第二个元素就是x[1];所以这句命令的意思就是按照列表中第一个元素排序
# reverse=True,可以按单词出现的个数进行倒序显示
new_data.sort(key=lambda x:x[1],reverse=True)
for i in new_data:
# print(i)
print(i[0],i[1])
func(str1)
实现效果如下: