新聞中心
python 8個(gè)常用內(nèi)置函數(shù)解說
8個(gè)超好用內(nèi)置函數(shù)set(),eval(),sorted(),reversed(),map(),reduce(),filter(),enumerate()
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、肥東網(wǎng)站維護(hù)、網(wǎng)站推廣。
python中有許多內(nèi)置函數(shù),不像print那么廣為人知,但它們卻異常的強(qiáng)大,用好了可以大大提高代碼效率。
這次來梳理下8個(gè)好用的python內(nèi)置函數(shù)
1、set()
當(dāng)需要對一個(gè)列表進(jìn)行去重操作的時(shí)候,set()函數(shù)就派上用場了。
用于創(chuàng)建一個(gè)集合,集合里的元素是無序且不重復(fù)的。集合對象創(chuàng)建后,還能使用并集、交集、差集功能。
2、eval()之前有人問如何用python寫一個(gè)四則運(yùn)算器,輸入字符串公式,直接產(chǎn)生結(jié)果。用eval()來做就很簡單:eval(str_expression)作用是將字符串轉(zhuǎn)換成表達(dá)式,并且執(zhí)行。
3、sorted()在處理數(shù)據(jù)過程中,我們經(jīng)常會用到排序操作,比如將列表、字典、元組里面的元素正/倒排序。這時(shí)候就需要用到sorted() ,它可以對任何可迭代對象進(jìn)行排序,并返回列表。對列表升序操作:
對元組倒序操作:
使用參數(shù):key,根據(jù)自定義規(guī)則,按字符串長度來排序:
根據(jù)自定義規(guī)則,對元組構(gòu)成的列表進(jìn)行排序:
4、reversed()如果需要對序列的元素進(jìn)行反轉(zhuǎn)操作,reversed()函數(shù)能幫到你。reversed()接受一個(gè)序列,將序列里的元素反轉(zhuǎn),并最終返回迭代器。
5、map()做文本處理的時(shí)候,假如要對序列里的每個(gè)單詞進(jìn)行大寫轉(zhuǎn)化操作。這個(gè)時(shí)候就可以使用map()函數(shù)。
map()會根據(jù)提供的函數(shù),對指定的序列做映射,最終返回迭代器。也就是說map()函數(shù)會把序列里的每一個(gè)元素用指定的方法加工一遍,最終返回給你加工好的序列。舉個(gè)例子,對列表里的每個(gè)數(shù)字作平方處理:
6、reduce()前面說到對列表里的每個(gè)數(shù)字作平方處理,用map()函數(shù)。那我想將列表里的每個(gè)元素相乘,該怎么做呢?這時(shí)候用到reduce()函數(shù)。
reduce()會對參數(shù)序列中元素進(jìn)行累積。第一、第二個(gè)元素先進(jìn)行函數(shù)操作,生成的結(jié)果再和第三個(gè)元素進(jìn)行函數(shù)操作,以此類推,最終生成所有元素累積運(yùn)算的結(jié)果。再舉個(gè)例子,將字母連接成字符串。
你可能已經(jīng)注意到,reduce()函數(shù)在python3里已經(jīng)不再是內(nèi)置函數(shù),而是遷移到了functools模塊中。這里把reduce()函數(shù)拎出來講,是因?yàn)樗匾恕?/p>
7、filter()一些數(shù)字組成的列表,要把其中偶數(shù)去掉,該怎么做呢?
filter()函數(shù)輕松完成了任務(wù),它用于過濾序列,過濾掉不符合條件的元素,返回一個(gè)迭代器對象。filter()函數(shù)和map()、reduce()函數(shù)類似,都是將序列里的每個(gè)元素映射到函數(shù),最終返回結(jié)果。我們再試試,如何從許多單詞里挑出包含字母w的單詞。
8、enumerate()這樣一個(gè)場景,同時(shí)打印出序列里每一個(gè)元素和它對應(yīng)的順序號,我們用enumerate()函數(shù)做做看。
enumerate翻譯過來是枚舉、列舉的意思,所以說enumerate()函數(shù)用于對序列里的元素進(jìn)行順序標(biāo)注,返回(元素、索引)組成的迭代器。再舉個(gè)例子說明,對字符串進(jìn)行標(biāo)注,返回每個(gè)字母和其索引。
python中的**是什么意思?
1、格式符
例如:
a = 'test'
print 'it is a %s' %(a)
打印的結(jié)果就是 it is a test
2、單獨(dú)看%,是一個(gè)運(yùn)算符號,求余數(shù)。
例如:
求模運(yùn)算,相當(dāng)于mod,也就是計(jì)算除法的余數(shù),比如5%2就得到1。
擴(kuò)展資料:
python中%常用的操作有%s,%d,%r等
%s,%r,%d分別表示字符串以str(),rper(),以及十進(jìn)制整數(shù)表示,%f表示結(jié)果為浮點(diǎn)型。
1、%f 浮點(diǎn)型
import?math?
%a.bf,a表示浮點(diǎn)數(shù)的打印長度,b表示浮點(diǎn)數(shù)小數(shù)點(diǎn)后面的精度 ,%f時(shí)表示原值,默認(rèn)是小數(shù)點(diǎn)后5位數(shù) 。?
print?"PI=%f"?%?math.pi
output:?PI=3.141593?
只是%9f時(shí),表示打印長度9位數(shù),小數(shù)點(diǎn)也占一位,不夠左側(cè)補(bǔ)空格
print?"PI=%9f"?%?math.pi
output:?PI=_3.141593
2、%d 整型
[python]?view plain?copy
num=14?
#%d打印時(shí)結(jié)果是14?
3、%s 字符串
[python]?view plain?copy
string="hello"? ? ?
%s打印時(shí)結(jié)果是hello
python中 *= 是什么意思
1、兩個(gè)值相加,然后返回值給符號左側(cè)的變量
舉例如下:
a=1
b=3
a+=b(或者a+=3)
a
4
2、用于字符串連接(變量值帶引號,數(shù)據(jù)類型為字符串)
a='1'
b='2'
a+=b
a
'12'
擴(kuò)展資料:
Python常用運(yùn)算符
1、算術(shù)運(yùn)算符
2、比較運(yùn)算符
3、賦值運(yùn)算符
4、位運(yùn)算符
5、邏輯運(yùn)算符
6、成員運(yùn)算符
7、身份運(yùn)算符
8、運(yùn)算符優(yōu)先級
以下所列優(yōu)先級順序按照從低到高優(yōu)先級的順序;同行為相同優(yōu)先級。
Lambda? #運(yùn)算優(yōu)先級最低
邏輯運(yùn)算符: or
邏輯運(yùn)算符: and
邏輯運(yùn)算符:not
成員測試: in, not in
同一性測試: is, is not
比較: ,=,,=,!=,==
按位或: |
按位異或: ^
按位與:
移位: ,
加法與減法: + ,-
乘法、除法與取余: *, / ,%
正負(fù)號: +x,-x
具有相同優(yōu)先級的運(yùn)算符將從左至右的方式依次進(jìn)行,用小括號()可以改變運(yùn)算順序。
參考資料:
參考資料來源:百度百科-Python
本文題目:python叉乘函數(shù) python 叉乘
新聞來源:http://fisionsoft.com.cn/article/hpgspj.html