1.max取最大值函數
#(1)max # max() 方法返回給定參數的最大值,參數可以為序列。
lis = [1,2,3,-4] print(max(lis)) #返回lis列表中的最大值
'''結果: 3 '''
print(max(lis,key=abs)) #key參數指向絕對值函數,返回的結果是-4
2.min取最小值函數
#(2)min # min() 方法返回給定參數的最小值,參數可以為序列。
lis = [-1,0,1,2] print(min(lis)) #返回lis列表中的最小值
'''結果: -1 '''
3.filter過濾函數
#(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序列映射函數
#(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序列排序函數
#(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'] '''