欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

關(guān)于python,有哪些實(shí)用的知識(shí)點(diǎn)或者小技巧?

本文邀請(qǐng)pany來(lái)回答,以下是他基于工作經(jīng)驗(yàn)羅列出來(lái)的關(guān)于python的一些實(shí)用知識(shí)點(diǎn)和小技巧,希望對(duì)你有所幫助~

文章不旨在概念的介紹和深挖,或者酷炫的第三方庫(kù)介紹。更多是站在實(shí)用性角度簡(jiǎn)明快速羅列自認(rèn)為頗為有用的知識(shí)點(diǎn)或者技巧。為提高代碼的效率或可讀性,便利性等添磚加瓦。經(jīng)驗(yàn)之談,歡迎交流和拍磚。

字符串

字符拼接,join。

這里需要強(qiáng)調(diào)下,任何字符相關(guān)的可迭代對(duì)象都可以使用join。除了set,tuple外,類(lèi)句柄對(duì)象同樣可以使用join。

關(guān)鍵字格式化

除了我們常用的%s進(jìn)行格式化外,其實(shí)還可以按照關(guān)鍵字格式化,對(duì)于比較多變量時(shí)的情況,有利于提高代碼的可讀性。

當(dāng)然format可以類(lèi)似地

行分割

字符分隔

split(rsplit)其實(shí)時(shí)有第二個(gè)參數(shù)的,表示按順序分隔幾次,類(lèi)似‘指定數(shù)目的非貪婪分隔’

內(nèi)容重復(fù)的字符串

多行縮進(jìn)處理

標(biāo)準(zhǔn)庫(kù)的textwrap.dedent可以刪除源文本中各行行首的共同縮進(jìn)部分

標(biāo)準(zhǔn)庫(kù)textwrap還有其他一些方法處理文本格式,例如fill設(shè)定行寬度和首行縮減,indent添加行前綴等等。

字典

setdefault

給字典設(shè)置(增加)新的鍵,存在就不設(shè)置(獲取當(dāng)前key對(duì)應(yīng)的值),不存在就設(shè)置并返回當(dāng)前key對(duì)應(yīng)的值

update,更新字典

fromkeys(seq[,value])

創(chuàng)建一個(gè)新字典,序列seq的元素為鍵,value為字典所有鍵對(duì)應(yīng)的初始值(不指定為None)。

類(lèi)似的功能其實(shí)也可以通過(guò)defaultdict來(lái)實(shí)現(xiàn),后面會(huì)舉例。

標(biāo)準(zhǔn)庫(kù)collections的defaultdict和OrderedDict

defaultdict類(lèi)接受一個(gè)類(lèi)型作為參數(shù),當(dāng)所訪問(wèn)的鍵不存在的時(shí)候,可以實(shí)例化一個(gè)指定類(lèi)型空值作為默認(rèn)值

統(tǒng)計(jì)詞頻

defaultdict類(lèi)還使用任何不帶參的函數(shù),該函數(shù)的返回值作為默認(rèn)值,這樣可以實(shí)現(xiàn)多層key默認(rèn)值的指定。

所以defaultdict可以覆蓋setdefault的使用場(chǎng)景,人傾向使用defaultdict,更加方便簡(jiǎn)潔

模仿fromkeys

OrderedDict

python的字典是無(wú)序的,OrderedDict可以保留key的順序信息

OrderedDict的Key會(huì)按照插入的順序排列

json化后可以保留順序

列表

生成式

生成式中的判斷

生成式多層嵌套

但是多層生成式不推薦過(guò)度使用,可能會(huì)導(dǎo)致可讀性更差。列表的索引有不少靈活的用法:

元素重復(fù)的序列

*運(yùn)算符可生成元素重復(fù)的序列

在for循環(huán)中一同拿到索引和元素

其實(shí)enumerate函數(shù)的可使用范圍也包括所有的可迭代對(duì)象

例如文件句柄

在列表中查找

除了使用index()方法返回查找元素的索引外。對(duì)于復(fù)雜點(diǎn)的元素可以使用生成器及其next方法

Set

集合生成式

實(shí)際上{1,2,3}相當(dāng)于set([1,2,3])

set支持leninjoin

刪除元素:remove和discard

二者的區(qū)別在于,如果被指定刪除的不存在時(shí)remove會(huì)拋出KeyError異常,而discard則不會(huì)

對(duì)集合添加多項(xiàng)

集合運(yùn)算

推薦使用運(yùn)算符而不是set方法函數(shù),運(yùn)算符看起來(lái)更簡(jiǎn)潔,有更好的可讀性

如果讀完此文對(duì)你有幫助,請(qǐng)點(diǎn)個(gè)贊或者轉(zhuǎn)發(fā)讓更多人知道哦~