6.python的set、list和dict的解析

#-*-coding:UTF-8-*-
#列表解析
#提供了一种紧凑的方式,实现了通过对列表中每一个元素应用一个函数方法来将一个列表映射到另外一个列表。

a_list=[1,2,3,4,5]
b=[elem *2 for elem in a_list]                  #对于a_list中的每个元素,都乘以2,然后返回一个新列表
print b

b=[f for f in a_list if f<3]                   #用列表解析来进行过滤,生成新的列表
print b

b=[(f,f+10) for f in a_list]                   #复杂的用法,可以使用列表生成更复杂的列表
print b
print type(b)


#字典解析,和列表解析类似

a_dict={'a':1,'b':2,'c':3}
b=[elem for elem in a_dict]                    #从字典得到一个列表
print type(b)
print b

b={k:v for k,v in a_dict.items()}                  #得到一个字典
print b
print b.keys()
print b.items()

#字典的键值交换
print {value:key for key ,value in a_dict.items()}      #key,value是从a_list.items()这个方法返回的每个元素都是一个元组,所以可以取出来

#集合解析
a_set=set(range(10))
print a_set

print {x**2 for x in a_set}                #每个元素都平方

原文地址:https://www.cnblogs.com/chenjianhong/p/4145138.html