16 個(gè)必知必會(huì)的 Python 教程!
介紹
Python 是一門用途廣泛的編程語(yǔ)言,它具有大量的庫(kù)和框架。有一些鮮為人知的 Python 編碼技巧和庫(kù)可以讓你作為開(kāi)發(fā)人員的工作更為輕松,編寫代碼更高效。
本文中將探討一些鮮為人知的 Python 技巧,這些技巧非常有用,但并不廣為人知。通過(guò)學(xué)習(xí)和使用這些技巧,可以幫你節(jié)省時(shí)間和精力,并使你的代碼更加優(yōu)雅和高效。那么,讓我們深入探索 Python 語(yǔ)言的這些隱藏寶藏吧!
1.三元運(yùn)算符
三元運(yùn)算符是 if-else 語(yǔ)句的簡(jiǎn)寫。語(yǔ)法是value_if_true if condition else value_if_false
。三元運(yùn)算符是一行代碼,可以替代多行 if-else 語(yǔ)句,使你的代碼更加簡(jiǎn)潔。
上面的代碼通過(guò)檢查“a”是否大于“b”,如果為真則返回“a”,如果為假則返回“b”。
2.枚舉函數(shù)
enumerate()
函數(shù)向可迭代對(duì)象添加一個(gè)計(jì)數(shù)器,并以枚舉對(duì)象的形式返回。當(dāng)你想要遍歷列表并跟蹤索引時(shí),此函數(shù)很有用。
3. 壓縮函數(shù)
zip()函數(shù)聚合來(lái)自每個(gè)可迭代對(duì)象的元素并返回一個(gè)元組迭代器。當(dāng)你想同時(shí)遍歷兩個(gè)或多個(gè)列表時(shí),此函數(shù)很有用。
4. 列表生成式
列表生成式是一種從現(xiàn)有列表或任何可迭代對(duì)象創(chuàng)建列表的簡(jiǎn)潔方法。這是一種可以替代 for 循環(huán)的單行代碼,使你的代碼更加高效,并使代碼的可讀性更強(qiáng)。
5. 匿名函數(shù)
Lambda
?函數(shù)是使用lambda關(guān)鍵字定義的匿名函數(shù)。當(dāng)你需要編寫一次性的小函數(shù)并且不想使用關(guān)鍵字def
來(lái)定義命名函數(shù)時(shí),它們很有用。微信搜索公眾號(hào):架構(gòu)師指南,回復(fù):架構(gòu)師 領(lǐng)取資料 。
6.any()和all()函數(shù)
any()函數(shù)和all()函數(shù)返回True或False基于 iterable 中元素的真實(shí)性。如果 iterable 中的任何元素為真,則函數(shù)any()返回True,如果 iterable 中的所有元素都為真,則函數(shù)all()返回True。
7. 迭代模塊
itertools
模塊提供了一組函數(shù)來(lái)處理迭代器。該模塊中的函數(shù)包括chain
、product
和permutations
。
8. 生成器
生成器是一種可迭代的類型,它可以即時(shí)生成值,而不是將它們存儲(chǔ)在內(nèi)存中。它是使用yield關(guān)鍵字定義的,用于創(chuàng)建自定義迭代器。
9.裝飾器
裝飾器是一種修改函數(shù)或類行為的方法。使用@符號(hào)進(jìn)行定義,可用于向函數(shù)添加功能,例如日志記錄、計(jì)時(shí)或身份驗(yàn)證。
10. 使用多個(gè)函數(shù)參數(shù)
在 Python 中,可以使用*和**運(yùn)算符來(lái)處理多個(gè)函數(shù)參數(shù)。*運(yùn)算符用于將參數(shù)列表作為單獨(dú)的位置參數(shù)進(jìn)行傳遞,運(yùn)算符**用于傳遞關(guān)鍵字參數(shù)的字典。
11. 動(dòng)態(tài)導(dǎo)入
當(dāng)你想根據(jù)用戶輸入或配置導(dǎo)入模塊時(shí),可以使用模塊動(dòng)態(tài)導(dǎo)入模塊importlib。
12. 字典生成式
字典生成式是一種從現(xiàn)有字典或任何可迭代對(duì)象創(chuàng)建字典的簡(jiǎn)潔方法。它是一種可以替代 for 循環(huán)的單行代碼,使你的代碼更加高效,代碼可讀性更強(qiáng)。
13. 可調(diào)用對(duì)象
在 Python 中,任何可以稱為函數(shù)的對(duì)象都稱為可調(diào)用對(duì)象,包括函數(shù)、方法、類,甚至是定義__call__
方法的對(duì)象。
14.用下劃線分隔大數(shù)字/字符
大數(shù)字很難一眼看出來(lái)是多大,在 Python 中可以用下劃線來(lái)使數(shù)字更易讀。
15.快速合并兩個(gè)字典
可以使用以下代碼在 Python 中快速合并 2兩個(gè)字典。
16. 列表、集合和字典是可變的
可變意味著可以更改或更新對(duì)象(列表、集合或字典),而無(wú)需更改內(nèi)存中對(duì)象的指針。實(shí)際效果可見(jiàn)如下示例。
在下面的示例中,通過(guò)添加一個(gè)新城市來(lái)更新城市列表,可以看到 ID(對(duì)象指針)保持不變,集合和字典也是如此。