列表推导式进阶
00:00
列表/字典/集合推导式与生成器表达式
1. 推导式
# 列表推导
squares = [x**2 for x in range(10)]
evens = [x for x in range(20) if x % 2 == 0]
# 字典推导
word_len = {w: len(w) for w in ['hello', 'world']}
# 集合推导
unique = {x % 5 for x in range(20)}
# 嵌套推导
flat = [x for row in matrix for x in row]
2. 生成器表达式
# 惰性求值,节省内存
total = sum(x**2 for x in range(1000000))