這篇文章主要介紹“高級Python函數(shù)有哪些”,在日常操作中,相信很多人在高級Python函數(shù)有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”高級Python函數(shù)有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)長期為成百上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為猇亭企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,猇亭網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
1. map()
map()是一個(gè)內(nèi)置的Python函數(shù),用于將一個(gè)函數(shù)應(yīng)用于元素序列(如列表或字典)。它可能是進(jìn)行數(shù)據(jù)操作的最簡單易讀的方法。
下面的示例旨在求出列表中數(shù)字的平方數(shù)。首先,必須明確所使用的函數(shù)。接下來,筆者展示并對比了使用map()和不使用map()的方法,即python和非python的方法。
nums = [1, 2, 3, 4, 5]# this function will calculate square def square_num(x): return x**2 # non-pythonic approach squares = [] for num in nums: squares.append(square_num(num)) print('Non-Pythonic Approach: ', squares) # pythonic approach x = map(square_num, nums) print('Pythonic Approach: ', list(x))
輸出本質(zhì)上是相同的,但python方法明顯更加簡潔,過程也不需要循環(huán)。
2. zip ()
zip()是筆者最中意使用的函數(shù)之一。它允許用戶同時(shí)迭代兩個(gè)或多個(gè)列表。這個(gè)功能在處理日期和時(shí)間問題時(shí)都十分有用。
例如,如果每天在工作中使用它的話,當(dāng)用戶就有第一個(gè)屬性時(shí)表示該事件的開始時(shí)間,當(dāng)有第二個(gè)屬性時(shí)表示該事件的結(jié)束時(shí)間。進(jìn)一步想想,工作中總是需要計(jì)算事件之間的時(shí)間差的,而zip是迄今為止最簡單的實(shí)現(xiàn)方法。
范例中創(chuàng)建了兩個(gè)包含數(shù)字的列表,任務(wù)是對相應(yīng)的元素求和:
first = [1, 3, 8, 4, 9] second = [2, 2, 7, 5, 8] # Iterate over two or more list at the same time for x, y in zip(first, second): print(x + y)
這樣既簡單又干凈。
3. filter()
filter()函數(shù)在某種程度上類似于map()函數(shù)——也是將一個(gè)函數(shù)應(yīng)用于某個(gè)序列,不同之處在于filter()只返回值為True的元素。
在如下的示例中,筆者創(chuàng)建了一個(gè)任意數(shù)字列表和一個(gè)函數(shù),如果該數(shù)字是偶數(shù),該函數(shù)將返回到True。同樣,筆者將演示如何以非python和python方式執(zhí)行該操作。
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # Will return true if input number is even def even(x): return x % 2 == 0 # non-pythonic approach even_nums = [] for num in numbers: if even(num): even_nums.append(num) print('Non-Pythonic Approach: ', even_nums) # pythonic approach even_n = filter(even, numbers) print('Pythonic Approach: ', list(even_n))
到此,關(guān)于“高級Python函數(shù)有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
文章標(biāo)題:高級Python函數(shù)有哪些
鏈接URL:http://m.newbst.com/article20/jegeco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、定制開發(fā)、手機(jī)網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、小程序開發(fā)、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)