淺析python中5個帶key的內置函數
1.max取最大值函數
max() 方法返回給定參數的最大值,參數可以為序列。
lis = [1,2,3,-4] print(max(lis)) #返回lis列表中的最大值 '''結果: 3 ''' print(max(lis,key=abs)) #key參數指向絕對值函數,返回的結果是-4
2.min取最小值函數
min() 方法返回給定參數的最小值,參數可以為序列。
lis = [-1,0,1,2] print(min(lis)) #返回lis列表中的最小值 '''結果: -1 '''
3.filter過濾函數
filter() 函數用於過濾序列,過濾掉不符合條件的元素,返回一個迭代器對象。
該接收兩個參數,第一個為函數,第二個為序列,序列的每個元素作為參數傳遞給函數進行判,然後返回 True 或 False,最後將返回True 的元素放到新列表中。
語法格式:filter(function, iterable)
實例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強轉數據類型的話,filter返回的是迭代器 '''結果: [1, 3, 5, 7, 9] '''
實例2
s = 'jason lv' iterator = filter(lambda x : x !='a',s) s1 = '' for i in iterator: s1 += str(i) print(s1) '''結果: json lv '''
4.map序列映射函數
map() 會根據提供的函數對指定序列做映射。
第一個參數 function 以參數序列中的每一個元素調用 function 函數,返回一個迭代器對象。
語法格式:map(function, iterable, …)
實例1
def pow2(x): return x * x lis = [1,2,3,4,5,6] print(list(map(pow2,lis))) '''結果: [1, 4, 9, 16, 25, 36] '''
實例2
lis = [1,2,3,4,5,6] print(list(map(lambda x : x *10 if x >3 else x / 2,lis))) '''結果: [0.5, 1.0, 1.5, 40, 50, 60]
5.sorted序列排序函數
Sort函數是list列表中的函數,而sorted可以對list或者iterator進行排序。
語法格式:sorted(iterable[, cmp[, key[, reverse]]])
參數說明:
(1) cmp參數
cmp接受一個函數,拿整形舉例,形式為:
def f(a, b): return a - b
如果排序的元素是其他類型的,如果a邏輯小於b,函數返回負數;a邏輯等於b,函數返回0;a邏輯大於b,函數返回正數就行瞭
(2)key參數
key也是接受一個函數,不同的是,這個函數隻接受一個元素, 形式如下
def f(a): return len(a)
key接受的函數返回值,表示此元素的權值,sort將按照權值大小進行排序
(3)reverse參數
接受False
或者True
表示是否逆序
語法格式:sorted(iterable[, cmp[, key[, reverse]]])
實例1
lis = [3,2,1,4,5,6] print(list(sorted(lis,reverse=True))) '''結果 [6, 5, 4, 3, 2, 1] ''' print(list(sorted(lis))) #默認不指定reverse參數時,順序是正序 '''結果 [1, 2, 3, 4, 5, 6] '''
實例2
lis = ['adf ee','zcv','qwer','a s s w'] print(list(sorted(lis,key=len))) '''結果: ['zcv', 'qwer', 'adf ee', 'a s s w'] '''
到此這篇關於淺析python中5個帶key的內置函數的文章就介紹到這瞭,更多相關python帶key的內置函數內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python列表排序 list.sort方法和內置函數sorted用法
- python list.sort()根據多個關鍵字排序的方法實現
- python中sort()函數用法詳解
- python3中dict.keys().sort()用不瞭的解決方法
- python 內置函數-range()+zip()+sorted()+map()+reduce()+filter()