首先,先簡單介紹一下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)
實現效果如下: