列表推导式
# 30以内能被3整除的数的平方 ret = [i*i for i in range(30) if i % 3 == 0] print(ret) # [0, 9, 36, 81, 144, 225, 324, 441, 576, 729]
生成器推导式
# 生成器推导式 g = (i for i in range(1,11)) # 生成一个生成器 for i in g: # 通过for循环取值 print(i)
字典推导式
d = {'a': 10, 'b': 20} new_d = {d[v]: v for v in d} # 返回一个新的字典 print(new_d)
集合推导式{}
# 自带去重 set1 = {i*i for i in (5, -5, 1, -1, 4, 8)} print(set1)