宋奇
Python中有許多內(nèi)置函數(shù),這些函數(shù)不像打印函數(shù)那樣出名,但功能非常強大。如果使用得當可以大大提高代碼效率。這里整理出8個很有用的Python內(nèi)置函數(shù)。
1. set()
當您需要對列表進行重復數(shù)據(jù)刪除時,set()函數(shù)會派上用場。set([iterable])用于創(chuàng)建一個集合。集合中的元素無序且不可重復。創(chuàng)建收集對象后,您還可以使用并集、交集和差異函數(shù)。
2. eval()
有人問如何用python編寫計算器,輸入字符串公式,然后直接產(chǎn)生結(jié)果。eval(expression [,globals [,locals]])將字符串轉(zhuǎn)換為表達式并執(zhí)行它。
此函數(shù)接受3個參數(shù):
①表達式,它包含要作為Python表達式求值的字符串。
②全局變量,其他2個參數(shù)是可選的,并且包含全局/局部方法和變量。
③局部變量,我們也可以通過eval()函數(shù)調(diào)用方法和函數(shù),您可以通過在第2個參數(shù)(開始)中指定索引(整數(shù))來更改開始索引。
3. sorted()
在處理數(shù)據(jù)的過程中,經(jīng)常使用排序操作,例如對列表、字典和元組中的元素進行正向/反向排序。這時,需要sorted(),它可以對任何可迭代對象進行排序并返回列表。
4. reversed()
如果需要反轉(zhuǎn)序列的元素,則reversed()函數(shù)可以為您提供幫助。reversed()接受序列,反轉(zhuǎn)序列中的元素,最后返回迭代器。
5. map()
進行文本處理時,假設您要大寫序列中每個單詞的轉(zhuǎn)換。此時,您可以使用map()函數(shù)。map()將根據(jù)提供的函數(shù)映射指定的序列,最后返回到迭代器。
6. bin()
bin(x)函數(shù)將整數(shù)轉(zhuǎn)換為以0b為前綴的二進制字符串。
您可以像切片number [2:]一樣,通過切片字符串來簡單地提取二進制數(shù)引發(fā)TypeError異常,突出顯示如果未指定整數(shù),則類型不能解釋為整數(shù)。
7. filter()
如果要從數(shù)字列表中刪除偶數(shù)數(shù)字,該怎么辦?
現(xiàn)在filter(function,iterable)函數(shù)開始起作用。它以一個函數(shù)和一個Iterable作為輸入,從該函數(shù)返回True的Iterable中返回元素。
filter()函數(shù)可輕松完成任務。它用于過濾序列,過濾不符合條件的元素并返回迭代器對象。
filter()函數(shù)類似于map()和reduce()函數(shù),它將序列中的每個元素映射到一個函數(shù),最后返回結(jié)果。
filter函數(shù)接受任何可迭代類型(例如列表、字符串、元組或字典)作為第二個參數(shù)讓我們再試一次,如何從許多單詞中選擇包含字母" b"的單詞。
8. enumerate()
如果出現(xiàn)這種情況,則序列中的每個元素及其對應的序列號將同時打印。我們使用enumerate()函數(shù)作為外觀。
enumerate()函數(shù)用于順序標記序列中的元素,并返回由(element,index)組成的迭代器。