python中的推导式

python中推导式

  1. 列表推导式
  2. 字典推导式
  3. 集合推导式

1.列表推导式

# 基本格式
list = [ i for i in range(10) if i % 2 ]
  • list 是列表推导式的返回值,即列表
  • i 是推导式的推导式生成元素(可以是表达式,包括函数)
  • for i in range(10) 迭代
  • if i % 2 判断条件
# 例1
# 自定义函数
def squared(x):
	return x*x

# 20内偶数的平方的列表
list_squared = [ squared(i) for i in range(20) if not i % 2 ]

注意点:列表推导式只能使用 ’ [ ] ‘,当写成’ ( ) '时列表推导式就变成了生成器generator

2.字典推导式

# dict_m键值对调
dict = { value: key for key, value in dict_m.items() }

3.集合推导式

# 基本格式
set = { i*2 for i in range(10) if i % 2 }

集合推导式跟列表推导式是一样的,唯一的不同就是使用’ { } ’

总结

# 列表
list = [ i for i in range(10) if i % 2 ]
# 字典
dict = { key: value for (key, value) in dict_m.items() }
# 集合
set = { i for i in range(10) if i % 2 }

猜你喜欢

转载自blog.csdn.net/MrNoboday/article/details/81586354