淺析python中5個(gè)帶key的內(nèi)置函數(shù)
1.max取最大值函數(shù)
max() 方法返回給定參數(shù)的最大值,參數(shù)可以為序列。
lis = [1,2,3,-4] print(max(lis)) #返回lis列表中的最大值 '''結(jié)果: 3 ''' print(max(lis,key=abs)) #key參數(shù)指向絕對(duì)值函數(shù),返回的結(jié)果是-4
2.min取最小值函數(shù)
min() 方法返回給定參數(shù)的最小值,參數(shù)可以為序列。
lis = [-1,0,1,2] print(min(lis)) #返回lis列表中的最小值 '''結(jié)果: -1 '''
3.filter過(guò)濾函數(shù)
filter() 函數(shù)用于過(guò)濾序列,過(guò)濾掉不符合條件的元素,返回一個(gè)迭代器對(duì)象。
該接收兩個(gè)參數(shù),第一個(gè)為函數(shù),第二個(gè)為序列,序列的每個(gè)元素作為參數(shù)傳遞給函數(shù)進(jìn)行判,然后返回 True 或 False,最后將返回True 的元素放到新列表中。
語(yǔ)法格式:filter(function, iterable)
實(shí)例1
def is_odd(x): return x % 2 == 1 print(list(filter(is_odd,[1,2,3,4,5,6,7,8,9]))) #python3中不使用list強(qiáng)轉(zhuǎn)數(shù)據(jù)類型的話,filter返回的是迭代器 '''結(jié)果: [1, 3, 5, 7, 9] '''
實(shí)例2
s = 'jason lv' iterator = filter(lambda x : x !='a',s) s1 = '' for i in iterator: s1 += str(i) print(s1) '''結(jié)果: json lv '''
4.map序列映射函數(shù)
map() 會(huì)根據(jù)提供的函數(shù)對(duì)指定序列做映射。
第一個(gè)參數(shù) function 以參數(shù)序列中的每一個(gè)元素調(diào)用 function 函數(shù),返回一個(gè)迭代器對(duì)象。
語(yǔ)法格式:map(function, iterable, ...)
實(shí)例1
def pow2(x): return x * x lis = [1,2,3,4,5,6] print(list(map(pow2,lis))) '''結(jié)果: [1, 4, 9, 16, 25, 36] '''
實(shí)例2
lis = [1,2,3,4,5,6] print(list(map(lambda x : x *10 if x >3 else x / 2,lis))) '''結(jié)果: [0.5, 1.0, 1.5, 40, 50, 60]
5.sorted序列排序函數(shù)
Sort函數(shù)是list列表中的函數(shù),而sorted可以對(duì)list或者iterator進(jìn)行排序。
語(yǔ)法格式:sorted(iterable[, cmp[, key[, reverse]]])
參數(shù)說(shuō)明:
(1) cmp參數(shù)
cmp接受一個(gè)函數(shù),拿整形舉例,形式為:
def f(a, b): return a - b
如果排序的元素是其他類型的,如果a邏輯小于b,函數(shù)返回負(fù)數(shù);a邏輯等于b,函數(shù)返回0;a邏輯大于b,函數(shù)返回正數(shù)就行了
(2)key參數(shù)
key也是接受一個(gè)函數(shù),不同的是,這個(gè)函數(shù)只接受一個(gè)元素, 形式如下
def f(a): return len(a)
key接受的函數(shù)返回值,表示此元素的權(quán)值,sort將按照權(quán)值大小進(jìn)行排序
(3)reverse參數(shù)
接受False
或者True
表示是否逆序
語(yǔ)法格式:sorted(iterable[, cmp[, key[, reverse]]])
實(shí)例1
lis = [3,2,1,4,5,6] print(list(sorted(lis,reverse=True))) '''結(jié)果 [6, 5, 4, 3, 2, 1] ''' print(list(sorted(lis))) #默認(rèn)不指定reverse參數(shù)時(shí),順序是正序 '''結(jié)果 [1, 2, 3, 4, 5, 6] '''
實(shí)例2
lis = ['adf ee','zcv','qwer','a s s w'] print(list(sorted(lis,key=len))) '''結(jié)果: ['zcv', 'qwer', 'adf ee', 'a s s w'] '''
到此這篇關(guān)于淺析python中5個(gè)帶key的內(nèi)置函數(shù)的文章就介紹到這了,更多相關(guān)python帶key的內(nèi)置函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實(shí)現(xiàn)json文件的增刪改操作方法
這篇文章主要介紹了python實(shí)現(xiàn)json文件的增刪改操作,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06python學(xué)習(xí)之使用Matplotlib畫(huà)實(shí)時(shí)的動(dòng)態(tài)折線圖的示例代碼
這篇文章主要介紹了python學(xué)習(xí)之使用Matplotlib畫(huà)實(shí)時(shí)的動(dòng)態(tài)折線圖的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02基于Flask+websocket實(shí)現(xiàn)一個(gè)在線聊天室
在今天的互聯(lián)網(wǎng)時(shí)代,實(shí)時(shí)通信成為了許多應(yīng)用和服務(wù)的核心特色,在本文中,我們將介紹如何使用 Flask 和 Websockets 通過(guò) Flask-SocketIO 框架創(chuàng)建一個(gè)簡(jiǎn)單的在線聊天室,感興趣的可以跟隨小編一起了解下2023-09-09推薦技術(shù)人員一款Python開(kāi)源庫(kù)(造數(shù)據(jù)神器)
今天小編給大家推薦一款Python開(kāi)源庫(kù),技術(shù)人必備的造數(shù)據(jù)神器!非常不錯(cuò),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-07-07TensorFlow車牌識(shí)別完整版代碼(含車牌數(shù)據(jù)集)
這篇文章主要介紹了TensorFlow車牌識(shí)別完整版代碼(含車牌數(shù)據(jù)集),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08