- 推导式种类
- 列表推导式
- 列表推导式语法
- 列表推导式举例
- 字典推导式
- 字典推导式语法
- 字典推导式举例
- 元组集合推导式
Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。 推导式种类
- 列表(list)推导式
- 字典(dict)推导式
- 集合(set)推导式
- 元组(tuple)推导式
[表达式 for 变量 in 序列] [表达式 for 变量 in 序列 if 条件] #只有一个if时放最后 [表达式1 if条件 else 表达式2 for 变量 in 序列] #if else时三目运算放前面 [表达式 for if for if for if…] for嵌套if,if嵌套for…列表推导式举例
# 单条件 names = ['Bob','Tom','alice','Jerry','Wendy','Smith'] new_names = [name.upper()for name in names if len(name)>3] print(new_names) result: ['ALICE', 'JERRY', 'WENDY', 'SMITH'] # if else型 names = ['Bob','Tom','alice','Jerry','Wendy','Smith'] new_names = [name.upper() if len(name)>3 else name.lower() for name in names] print(new_names) result: ['bob', 'tom', 'ALICE', 'JERRY', 'WENDY', 'SMITH'] #嵌套循环型 list1=[(i, j) for i in range(3) if(i%2==0) for j in range(5) if(j%2)==0] print(list1) result: [(0, 0), (0, 2), (0, 4), (2, 0), (2, 2), (2, 4)]字典推导式 字典推导式语法
{key_exp:value_exp for key,value in dict.items()}
{key_exp:value_exp for key,value in dict.items() if condition}
{key_exp:value_exp1 if condition else value_exp2 for key,value in dict.items()}
[表达式 for if for if for if…] for嵌套if,if嵌套for…
字典推导式举例
```其它同列表推导式
dict1 = {"a":10,"B":20,"C":True,"d":"mangnolia","E":"python"}
dict2 = {key:value if key.isupper() else "error" for key,value in dict1.items()}
print(dict2)
result:
{'a': 'error', 'B': 20, 'C': True, 'd': 'error', 'E': 'python'}
元组集合推导式
- 元组推导式同列表推导式。
- 集合推导式同列表推导式,但是会自动去重。



