編程學習網 > 編程語言 > Python > Python教程:程序員必知的 20 個 Python 技巧!
2024
05-20

Python教程:程序員必知的 20 個 Python 技巧!

Python 作為一門極為流行且應用極為廣泛的通用編程語言,其應用涵蓋了數據科學、機器學習、科學計算等諸多領域,同時也在后端 Web 開發、移動以及桌面應用程序等方面發揮著重要作用。眾多著名的公司都對 Python 加以運用,像 Google、Dropbox、Facebook、Mozilla、IBM、Quora、Amazon、Spotify、NASA、Netflix、Reddit 等等。Python 不僅是免費且開源的,而且與其相關的大多數產品同樣如此。此外,它還具備一個規模龐大、專注且友好的編程者與使用者社區。其語法的設計目標便是簡單、易讀并且優雅。

下面是20條非常實用的Python使用技巧。
1、Python之禪
Python之禪(又名PEP20)是由Tim Peters編寫的一小段文字,文中展示了設計和使用Python的指導原則。你可以在Python網站上找到這段文字,也可以在控制臺或Jupyter notebook中通過一條語句來顯示這段話。
2、鏈式賦值
如果需要讓多個變量引用同一個對象,則可以使用鏈式賦值
3、鏈式比較
多個比較語句也可以合成一個Python表達式,只需將多個比較運算符連起來即可。下面的表達式只有在所有比較都成立時返回True,否則返回False
這個表達式相當于(2 < x)且 (x ≤ 8) 且 (x ≤ 8),但更為緊湊,而且只需執行一次x求值。
如下寫法也是正確的
甚至可以將多個比較連起來
4、多重賦值
你可以使用元組解包,在一條語句中給多個變量賦值
注意第一條語句中的2, 4, 8相當于一個元組(2, 4, 8)。
5、更高級的多重賦值
Python的多重賦值遠不止于普通賦值。賦值左右兩側的元素數量甚至可以不一樣:
在這段代碼中,x對應于第一個值2,因為2是首先出現的。z是最后一個,所以取最后一個值8。y以列表形式取中間的所有值,因為它帶有星號(y*)。
6、交變量
利用多重賦值可以精確、優雅地交換任何兩個變量,而且無需引入第三個變量
7、合并字典
合并兩個字典的方法之一就是將它們解包到一個新的字典中
8、連接字符串
如果需要連接多個字符串,每個字符串之間使用同一個字符或同一組字符來連接,則可以使用str.join方法
9、高級遍歷
如果需要遍歷一個序列,同時還需要每個元素和相應的索引,則可以使用enumerate
每次遍歷你都會獲得一個元組,其中包括索引值和對應的元素。
10、反向遍歷
如果你需要反向遍歷一個序列,則可以使用reversed
11、元素結合
如果你需要將來自多個序列的元素結合起來,可以使用zip:
你可以遍歷返回的zip對象,或者將其變成一個列表或元祖。
12、矩陣轉置
雖然在處理矩陣時人們通常會使用numpy(或類似的庫),但利用zip也可以實現矩陣轉置
13、唯一值
如果元素的順序不重要,那么從列表中去除重復值的方法是將其轉換成一個集合,以獲得唯一的值
14、序列排序
默認情況下序列按照第一個元素的順序排序
但是,如果你希望按照第二個元素(或其他元素)排序,則可以使用key參數和適當的lambda函數作為第二個參數:
反向排序時也使用類似的方法
15、字典排序
可以用類似方法,對字典的.items方法返回的鍵值對進行排序
它們按照鍵的順序進行排序。如果你希望按照值排序,則應該指定相應的key參數。反向排序也類似
16、格式化raw字符串
PEP498和Python 3.6引入了“有格式字符串”的概念,或者稱為“f字符串”。這種字符串內部可以嵌入表達式。字符串可以同時作為raw字符串和有格式字符串使用,只需使用前綴fr
17、獲取當前日期和時間
Python有一個內置的datetime模塊,非常適合各種涉及到日期和時間的任務。方法之一.now能夠返回當前日期和時間
18、獲取最大(或最?。┰氐乃饕?/span>
Python沒有提供直接獲取最大(或最?。┰厮饕暮瘮?。不過,至少有兩種方法可以優雅地實現這一點
如果有兩個或多個元素都是最大值,那么該方法返回最后一個的索引:
如果想獲取第一個,則可以對上面的語句稍作改動:
另一種方法可能更優雅:
如果想獲得最小元素的索引,則只需用min替換上面的max。
19、獲取笛卡爾積
內置的itertools模塊提供了許多非常實用的類。其中之一就是product函數,你可以通過這個函數來獲得笛卡爾積
20、矩陣乘法操作符

PEP465和Python 3.5引入了專用的矩陣乘法運算符@。你可以在自己的類中實現matmul、rmatmul和imatmul來支持這個操作符。使用該操作符進行向量或矩陣乘法非常優雅。

以上就是Python教程:程序員必知的 20 個 Python 技巧!的詳細內容,想要了解更多Python教程歡迎持續關注編程學習網。

掃碼二維碼 獲取免費視頻學習資料

Python編程學習

查 看2022高級編程視頻教程免費獲取