我們都知道,Python 的設計哲學是「優雅」、「明確」、「簡單」。這也許很多人選擇 Python 的原因。但是我收到有些夥伴反饋,他寫的 Python 並不優雅,甚至很臃腫,那可能是你的姿勢不對哦!今天就給大家帶來 Python 語句的十大優雅之法。
為多個變數賦值
有時,有多個變數需要賦值,這時你會怎麼賦值呢?
常規方法:
常規方法是給變數逐個賦值。

優雅方法:
直接按順序對應一一賦值。

序列解包
需要取出列表中的元素。
常規方法:
一般我們知道可以通過下標獲取具體元素。

優雅方法:
給出對應變數接收所有元素。

優雅你的判斷語句
我們用判斷語句來定義一個絕對值函式。
常規方法:

優雅方法:

區間判斷
使用 and 連續兩次判斷的語句,條件都符合時才執行語句。
常規方法:

優雅方法:
使用鏈式判斷。

多個值符合條件判斷
多個值任意一個值符合條件即為 True 的情況。
常規方法:

優雅方法:
使用關鍵字 in,讓你的語句更優雅。

判斷是否為空
判斷元素是空還是非空。
常規方法:
一般我們想到的是 len() 方法來判斷元素長度,大於 0 則為非空。

優雅方法:
if 後面的執行條件是可以簡寫的,只要條件 是非零數值、非空字串、非空 list 等,就判斷為 True,否則為 False。

多條件內容判斷至少一個成立
常規方法:
用 or 連線多個條件。

優雅方法:
使用 any 語句。

多條件內容判斷全部成立
常規方法:
使用 and 連線條件做判斷。

優雅方法:
使用 all 方法。

遍歷序列的元素和元素下標
常規方法:
使用 for 迴圈進行遍歷元素和下標。

優雅方法:
使用 enumerate 函式

迴圈語句優化
舉例:生成 [1x1,2x2,3x3,4x4,5x5]。
常規方法:
使用簡單的 for 迴圈可以達到目的。

優雅方法:
使用列表生成式,一行程式碼搞定。

Python 這些優雅的寫法學會了嗎?自己趕緊動手試試吧。