目录
Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。
Python 支持各种数据结构的推导式:
- 列表(list)推导式
- 字典(dict)推导式
- 集合(set)推导式
- 元组(tuple)推导式
- [表达式 for 变量 in 列表]
- [out_exp_res for out_exp in input_list]
- [表达式 for 变量 in 列表 if 条件]
- [out_exp_res for out_exp in input_list if condition]
- names = ['van', 'billy', 'dick', 'pussy']
- new_names = [name.upper() for name in names if len(name) > 3]
- print(new_names)
运行效果:

- num = [i for i in range(30) if i % 3 == 0]
- print(num)
运行效果:

Python本来就是以kv键值对的格式对数据进行存储:
{ key_expr: value_expr for value in collection }
{ key_expr: value_expr for value in collection if condition }
- lens = ['van', 'billy', 'dick', 'pussy']
- new_lens = {key: len(key) for key in lens}
- print(new_lens)
运行效果:

- dic = {x: x ** 2 for x in (5, 9, 10)}
- print(dic)
运行效果:

{ expression for item in Sequence }
{ expression for item in Sequence if conditional }
- setnew = {i ** 2 for i in (8, 9, 10)}
- print(setnew)
运行效果:

- a = {x for x in 'take it boy' if x not in 'ab'}
- print(a)
运行效果:

(expression for item in Sequence )
(expression for item in Sequence if conditional )
- b = (x for x in range(1, 10))
- print(b) # 这里返回的是生成器对象
- print(tuple(b))
运行效果:
