Python列表推导式:一行代码装X指南
还用for循环?太out了!
squares = [] for i in range(10): squares.append(i*i)然后你看到大佬的代码:squares = [i*i for i in range(10)]——脚气的一行。
语法糖
[expression for item in iterable if condition]
带条件:[x for x in range(20) if x%2==0] → 偶数列表
嵌套循环:[f"{i}x{j}={i*j}" for i in range(1,10) for j in range(1,10)] → 乘法表
三元:["偶数" if x%2==0 else "奇数" for x in range(10)]
警告:别写这种:[x for y in z for a in b if x.a>2 for (c,d) in e.items() if c!="wtf"]——三个月后你自己都看不懂。最多套两层。