对于 if 赋值的话,单行显示更加简洁,同时也节约空间(行数)
基本思路就是 if 语句后面跟的东西提前,其他不变,有种倒装的感觉
>>> 5 if 2 > 5 else 3 3 >>> 5 if 2 < 5 else 3 5
第一行解释:输出 5,如果 2 > 5,否则输出 3,结果输出 3
第二行解释:输出 5,如果 2 < 5,否则输出 3,结果输出 5
for 也具有相似的,就是利用倒装的形式
>>> [a*2 for a in range(5)] [0, 2, 4, 6, 8] >>> [a*2 for a in range(5) if a%3 == 0] [0, 6]