Python推导式
1.列表推导式
-
作用
用简单的表达式方式来创建列表
-
语法规则
[ 表达式 for 自定义变量 in 可迭代对象 ] # 或 [ 表达式 for 自定义变量 in 可迭代对象 if 真值表达式 ]
-
示例
L=[] for i in range(1,101,5): L.append(i) print(L) L2 =[i for i in range(1,101,5)] print(L2) L3=[] for x in range(1,101): if x%2 == 0: L3.append(x**2) print(L3) L4=[x**2 for x in range(1,101) if x%2 == 0] print(L4) L5=[x**2 for x in range(1,101) for y in range(1,11) if y%2 == 0] print(L5)
2.字典推导式
字典推导基本格式:
-
{ 键表达式: 值表达式 for 元素 in 集合 }
-
{ 键表达式: 值表达式 for 元素 in 集合 if 条件 }
di_ct ={} for i in range(10): di_ct[i] = i**2 print(di_ct) dic = {i:i**2 for i in range(10)} print(dic)
-
3.集合推导式
集合推导式基本格式:
-
{ 表达式 for 元素 in 序列 }
-
{ 表达式 for 元素 in 序列 if 条件 }
set01=set() for i in range(10): set01.add(i) print(set01) set02 = {i for i in range(10)} print(set02)
4.元组推导式
元组推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的元组。
元组推导式和列表推导式的用法也完全相同,只是元组推导式是用 () 圆括号将各部分括起来,而列表推导式用的是中括号 [],另外元组推导式返回的结果是一个生成器对象。
元组推导式基本格式:
-
(表达式 for 元素 in 序列 )
-
(表达式 for 元素 in 序列 if 条件
di_ct ={} for i in range(10): di_ct[i] = i**2 print(di_ct) dic = {i:i**2 for i in range(10)} print(dic)