欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python max函數(shù)中key的用法及原理解析

 更新時(shí)間:2021年06月25日 17:28:52   作者:神馬東東2012  
最近有童鞋向小編求助怎么樣找到字符串中出現(xiàn)字?jǐn)?shù)最多的字符呢,其實(shí)最簡(jiǎn)單的處理方法是使用max函數(shù),max()函數(shù)用于獲得給定的可迭代對(duì)象中的最大值,關(guān)于Python max函數(shù)key用法跟隨小編一起通過(guò)本文學(xué)習(xí)下吧

一、背景

起源于一個(gè)問(wèn)題:怎樣找到字符串中出現(xiàn)次數(shù)最多的字符

其實(shí)使用max函數(shù)就能很輕松的解決這個(gè)問(wèn)題:

代碼:

str1 = "AAAaaa8888899sssss"
print(max(str1, key=str1.count))

結(jié)果:8

二、原理

max()函數(shù)用于獲得給定的可迭代對(duì)象中的最大值。

key是max()函數(shù)的一個(gè)參數(shù),它輔助max函數(shù)找到最大元素。當(dāng)max() 函數(shù)中有 key 參數(shù)時(shí),求的是 value 的最大值,當(dāng)沒(méi)有 key 參數(shù)時(shí),求的是 key 的最大值。

key可以對(duì)要比較的對(duì)象進(jìn)行一些處理,以達(dá)到對(duì)對(duì)象進(jìn)行特定規(guī)則的比較。

要在比較之前修改對(duì)象,或基于特定的屬性/索引進(jìn)行比較,必須使用key參數(shù)。

三、用法

獲取字典中key的最大值

dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1))
print(max(dict1.keys()))

獲取字典中最大value對(duì)應(yīng)的key值

dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1, key=dict1.get))
print(max(dict1, key=lambda x: dict1[x]))

獲取字典中最大value的值

dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1.values()))

獲取句子中的最長(zhǎng)單詞

str3 = "Life is short , I use python"
print(str3.split())
print(max(str3.split(), key=len))

獲取list中的最大值

list1 = ['11', 'zzz', '22', 'eee']
print(max(list1))

獲取list中的最大數(shù)值

list2 = ['11', '3', '222', '67']
print(max(list2, key=lambda x: int(x)))

獲取list中的絕對(duì)值最大的值

list3 = ['11', '-399', '222', '67']
print(max(list2, key=lambda x: abs(int(x))))

獲取元組list中指定索引的最大值

list4 = [(1, 'a'), (3, 'c'), (4, 'e'), (-1, 'z')]
print(max(list4, key=lambda x: x[1]))

四、實(shí)例

str1 = "AAAaaa888ww8899sssss"
print(max(str1, key=str1.count))
print('--------------------------')
 
print(max(str1))
print('--------------------------')
 
 
list1 = ['11', 'zzz', '22', 'eee']
print(max(list1))
print('--------------------------')
 
list2 = ['11', '-399', '222', '67']
print(max(list2, key=lambda x: int(x)))
print('--------------------------')
 
list3 = ['11', '-399', '222', '67']
print(max(list2, key=lambda x: abs(int(x))))
print('--------------------------')
 
# list3 = [{'age': 20}, {'age': 23}]
# print(max(list3))
# print('--------------------------')
 
list4 = [(1, 'a'), (3, 'c'), (4, 'e'), (-1, 'z')]
print(max(list4, key=lambda x: x[1]))
print('--------------------------')
 
 
dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1, key=dict1.get))
print(max(dict1, key=lambda x: dict1[x]))
 
dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1))
print(max(dict1.keys()))
 
dict1 = {'a': '11', 'c': '22', 'b': '33'}
print(max(dict1.values()))
print('--------------------------')

str3 = "Life is short , I use python"
print(str3.split())
print(max(str3.split(), key=len))
print(max(str3.split()))
print('--------------------------')

運(yùn)行結(jié)果:

以上就是Python max函數(shù)中key的用法的詳細(xì)內(nèi)容,更多關(guān)于Python max函數(shù)key用法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • PyQt5內(nèi)嵌瀏覽器注入JavaScript腳本實(shí)現(xiàn)自動(dòng)化操作的代碼實(shí)例

    PyQt5內(nèi)嵌瀏覽器注入JavaScript腳本實(shí)現(xiàn)自動(dòng)化操作的代碼實(shí)例

    今天小編就為大家分享一篇關(guān)于PyQt5內(nèi)嵌瀏覽器注入JavaScript腳本實(shí)現(xiàn)自動(dòng)化操作的代碼實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • python深度學(xué)習(xí)tensorflow1.0參數(shù)初始化initializer

    python深度學(xué)習(xí)tensorflow1.0參數(shù)初始化initializer

    這篇文章主要為大家介紹了python深度學(xué)習(xí)tensorflow1.0參數(shù)初始化initializer示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • python利用xlsxwriter模塊 操作 Excel

    python利用xlsxwriter模塊 操作 Excel

    這篇文章主要介紹了python利用xlsxwriter模塊 操作 Excel,幫助大家更好的利用python處理表格,提高辦公效率,感興趣的朋友可以了解下
    2020-10-10
  • Python字符串查找基本操作代碼案例

    Python字符串查找基本操作代碼案例

    這篇文章主要介紹了Python字符串查找基本操作代碼案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Jupyter notebook之如何快速打開(kāi)ipynb文件

    Jupyter notebook之如何快速打開(kāi)ipynb文件

    這篇文章主要介紹了Jupyter notebook之如何快速打開(kāi)ipynb文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 詳解model.train()和model.eval()兩種模式的原理與用法

    詳解model.train()和model.eval()兩種模式的原理與用法

    這篇文章主要介紹了詳解model.train()和model.eval()兩種模式的原理與用法,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,那么看完這篇文章一定會(huì)對(duì)你有所幫助
    2023-03-03
  • 詳解python發(fā)送各類(lèi)郵件的主要方法

    詳解python發(fā)送各類(lèi)郵件的主要方法

    python中email模塊使得處理郵件變得比較簡(jiǎn)單,這篇文章主要介紹了詳解python發(fā)送各類(lèi)郵件的主要方法,有興趣的可以了解一下。
    2016-12-12
  • tensorflow實(shí)現(xiàn)對(duì)張量數(shù)據(jù)的切片操作方式

    tensorflow實(shí)現(xiàn)對(duì)張量數(shù)據(jù)的切片操作方式

    今天小編就為大家分享一篇tensorflow實(shí)現(xiàn)對(duì)張量數(shù)據(jù)的切片操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python3 pickle模塊的使用方法詳細(xì)介紹

    Python3 pickle模塊的使用方法詳細(xì)介紹

    pickle提供了一個(gè)簡(jiǎn)單的持久化功能??梢詫?duì)象以文件的形式存放在磁盤(pán)上,pickle序列化后的數(shù)據(jù),可讀性差,人一般無(wú)法識(shí)別,本文詳細(xì)介紹了pickle模塊的使用方法
    2021-10-10
  • Python 代碼調(diào)試技巧示例代碼

    Python 代碼調(diào)試技巧示例代碼

    這篇文章主要介紹了Python 代碼調(diào)試技巧,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08

最新評(píng)論