推导式
-
-
推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体
>>> my_list = [x for x in [1,2,3,4,5]] >>> my_list [1, 2, 3, 4, 5] >>> my_list = [x for x in [1,2,3,4,5] if x % 2 == 1] >>> my_list [1, 3, 5] >>> my_list = [x**x for x in [1,2,3,4,5] if x % 2 == 1] >>> my_list [1, 27, 3125]
-
-
字典推导式
# 字典推导式和列表大致一样,只是需要传递两个参数
>>> my_dict = {key: values for key,values in (('name','dingh'),('age',23))} >>> my_dict {'name': 'dingh', 'age': 23} >>> my_dict = {key + '_1': values * 5 for key,values in (('name','ding'),('age',23))} >>> my_dict {'name_1': 'dingdingdingdingding', 'age_1': 115}
-
集合推导式
# 集合推导式和列表相比,只是将中括号变成成了花括号 >>> my_set = {x+1 for x in [1,2,3,4,5]} >>> my_set {2, 3, 4, 5, 6} # 可以看到结果是一样的,是因为集合不允许存在重复的值 >>> my_set = {x+1 for x in [1,2,3,4,5,5]} >>> my_set {2, 3, 4, 5, 6} >>> my_set = {x+1 for x in [1,2,3,4,5] if x > 2} >>> my_set {4, 5, 6}