Python常見內(nèi)置高效率函數(shù)用法示例
本文實(shí)例講述了Python常見內(nèi)置高效率函數(shù)用法。分享給大家供大家參考,具體如下:
1. filter(function,sequence)
將sequence中的每個(gè)元素,依次傳進(jìn)function函數(shù)(可以自定義,返回的結(jié)果是True或者False)篩選,返回符合條件的元素,重組成一個(gè)String,List,Tuple等(跟sequence一樣)
示例
def func(x): return x%2==0 and x%3==0 filter(func,(3,6,8,12,15,21)) #(6, 12)
2. map(functiom,sequence)
將sequence中的每個(gè)元素,依次傳進(jìn)function函數(shù)(可以自定義,返回的結(jié)果是數(shù)值)計(jì)算,無論sequence是什么類型,都返回List
示例
def func(x): return x*2 map(func,(3,6,8,12,15,21)) #[6, 12, 16, 24, 30, 42]
map支持多個(gè)sequence輸入,但是function也要有相同數(shù)量的參數(shù)
def func(x,y): return x+y seq1=[3,6,4,8] seq2=[6,4,3,7] map(func,seq1,seq2) #[9, 10, 7, 15]
注意:以上示例是在python2.7中的,python3要用如下用法
>>> map_obj = map(lambda x:x+1,[1,2,3,4]) >>> map_obj <map object at 0x0000014C511BD898> >>> list(map_obj) [2, 3, 4, 5]
3. reduce(function, sequence, starting_value)
將sequence中的item順序迭代調(diào)用function,例如可以用來對(duì)List求和:
def add(x,y): return x+y reduce(add,[3,6,4,8]) #21 #相當(dāng)于運(yùn)行‘3+6+4+8'=21
如果有starting_value,還可以作為初始值調(diào)用
def subtract(x,y): return x-y reduce(subtract,[3,6,4],20) #7 #相當(dāng)于'20-3-6-4'=7
4. lambda匿名函數(shù)
語法:lambda 參數(shù)1,參數(shù)2(,參數(shù)n..):表達(dá)式 返回的是一個(gè)函數(shù)對(duì)象
示例
func=lambda x,y:x+y func(3,5) #8
將lambda和reduce結(jié)合
reduce(lambda x,y:x+y,[3,6,4,8]) #21
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
利用python實(shí)現(xiàn)平穩(wěn)時(shí)間序列的建模方式
這篇文章主要介紹了利用python實(shí)現(xiàn)平穩(wěn)時(shí)間序列的建模方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python的Tornado框架實(shí)現(xiàn)異步非阻塞訪問數(shù)據(jù)庫的示例
Tornado框架的異步非阻塞特性是其最大的亮點(diǎn),這里我們將立足于基礎(chǔ)來介紹一種簡(jiǎn)單的Python的Tornado框架實(shí)現(xiàn)異步非阻塞訪問數(shù)據(jù)庫的示例:2016-06-06
PyQt4 treewidget 選擇改變顏色,并設(shè)置可編輯的方法
今天小編就為大家分享一篇PyQt4 treewidget 選擇改變顏色,并設(shè)置可編輯的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06
Python常用模塊sys,os,time,random功能與用法實(shí)例分析
這篇文章主要介紹了Python常用模塊sys,os,time,random功能與用法,結(jié)合實(shí)例形式分析了Python模塊sys,os,time,random功能、原理、相關(guān)模塊函數(shù)、使用技巧與操作注意事項(xiàng),需要的朋友可以參考下2020-01-01
基于Python實(shí)現(xiàn)一個(gè)自動(dòng)關(guān)機(jī)程序并打包成exe文件
這篇文章主要介紹了通過Python創(chuàng)建一個(gè)可以自動(dòng)關(guān)機(jī)的小程序,并打包成exe文件。文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,感興趣的同學(xué)可以了解一下2021-12-12
python 實(shí)現(xiàn)全球IP歸屬地查詢工具
這篇文章主要介紹了python 實(shí)現(xiàn)全球IP歸屬地查詢工具的示例代碼,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12
tensorflow中的數(shù)據(jù)類型dtype用法說明
這篇文章主要介紹了tensorflow中的數(shù)據(jù)類型dtype用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05
在PYQT5中QscrollArea(滾動(dòng)條)的使用方法
今天小編就為大家分享一篇在PYQT5中QscrollArea(滾動(dòng)條)的使用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06

