本文转自头条号
我们都知道,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 这些优雅的写法学会了吗?自己赶紧动手试试吧。