Python的小技巧很多,,入門容易精通難!在進(jìn)階的路上,,有沒有什么好的技巧和好的方法,,就是不斷總結(jié),,不斷記筆記,!尤其是好的用法,就像寫作文一樣,,好的名言警句要多背誦一些,,寫作的時(shí)候,肚子里的墨水多了才能才思泉涌,,寫出更多的好代碼,。 1、遍歷一個(gè)序列 評(píng):Python中的序列是使用頻率非常高的,,很多傳統(tǒng)語(yǔ)言過來(lái)的,,習(xí)慣用下標(biāo)遍歷,Python中序列是可迭代的,,直接for即可,! 2、遍歷倒序 評(píng):用range的負(fù)數(shù)來(lái)遍歷,,不如直接反轉(zhuǎn)遍歷 3,、遍歷2個(gè)collection 評(píng): zip真的不錯(cuò),尤其是處理2個(gè)序列非常簡(jiǎn)潔,在Python2.x還需要用itertool.izip來(lái)返回迭代器,,現(xiàn)在Py3可以直接使用zip返回迭代器,。 4、遍歷排序的序列 評(píng): sorted這個(gè)函數(shù)非常重要,,尤其是入門的菜鳥一定要記住這個(gè)函數(shù),,很多妙的用法都跟它有關(guān)。 5,、自定義排序 評(píng):排序是一個(gè)時(shí)時(shí)刻刻都遇到的文章,,有列表排序,字典排序,,排序里面的key用法很重要,,甚至自定義一些函數(shù)去處理 6、遍歷文件遇到指定字符退出 評(píng):iter是一個(gè)內(nèi)置函數(shù)用來(lái)生產(chǎn)迭代器,,partial的不斷的讀入文件中32字節(jié),,注意iter引入第二個(gè)參數(shù),,表示當(dāng)讀入的內(nèi)容是''的時(shí)候,會(huì)觸發(fā)生成器stop,! 7,、函數(shù)遍歷多出口問題 評(píng):for else這種用法跟傳統(tǒng)的很不一樣,一開始有點(diǎn)不習(xí)慣,,熟悉了之后發(fā)現(xiàn)在搜索的時(shí)候經(jīng)常會(huì)這樣寫,。 8、字典的循環(huán) 評(píng):字典的循環(huán),,這個(gè)是基本功,,必須要掌握。 9,、字典的統(tǒng)計(jì) 評(píng):巧妙的利用字典的get用法,,取不到value的時(shí)候用缺省值0 10、字典的統(tǒng)計(jì) 評(píng):有點(diǎn)類似合并同類項(xiàng),,這樣的場(chǎng)景一般用defaultdict處理會(huì)簡(jiǎn)潔很多 11,、展開序列 評(píng):要學(xué)會(huì)利用tuple展開,會(huì)更快更好,,而且很多源碼都是這樣處理的,。 12、交換變量 評(píng):讓我想起來(lái)的冒泡排序,,交換變量,,Python可以直接在一行中交換,! 13,、更新序列 評(píng):利用collections模塊里面的雙向隊(duì)列,,會(huì)更簡(jiǎn)潔而且看的更舒服。 上面的內(nèi)容是我在逛Github的時(shí)候看到了,,跟大家分享一下,。限于篇幅沒有展開,具體的鏈接:https://github.com/JeffPaine ,。這些技巧需要細(xì)細(xì)咀嚼,,慢慢消化,然后記下來(lái),,比如記住了collections模塊,,zip,sorted 等等,,最好多敲幾遍加深影響,! |
|