python三元表达式+列表生成式

三元表达式长的样子大概是这样:

def max1(a,b):
    return a if a > b else b  #相当于C中的a>b?a:b

print(max1(4,5))  #5

然后列表生成式大概是这样:

a = [1, 2, 3, 4, 5]
b = [i+1 for i in a if i > 3]
print(b)  #[5, 6]
然后三元表达式加入列表生成式里面就很骚了。比如:
a = [1, 2, 3, 4, 5]
b = [i if i < 5 else 0 for i in a if i > 3]
print(b)  #[4, 0]
当然了,可以在列表生成式里面加入各种各样的骚气函数,比如map函数,据说可以大大减少代码执行时间2333。emmmmm反正一行代码就能弄成很骚的列表。

你可能感兴趣的:(python)