推导式的作用很单纯,简化代码,没了!就这么简单
用一个表达式来创建一个有规律的列表抑或是控制一个有规律的列表
需求:实现一个包含数字0-10的列表
①用while循环实现
num = [] i = 0 while i <= 10: num.append(i) i+=1 print(num)②用for循环实现
num = [] for i in range(11): num.append(i) print(num)*③列表生成式实现
num = [i for i in range(11)] print(num)需求:创建一个0-10的偶数列表
①用range()步长实现
num = [i for i in range(0,11,2)] print(num)*②if实现
num = [i for i in range(11) if i % 2 == 0] print(num)需求:创建列表 [(1,0) , (1,1) , (1,2) , (2,0) , (2,1) , (2,2)]
num = [(i,j) for i in range(1,3) for j in range(3) ] print(num)需求一: 创建一个字典,key是1-5数字,value是这个数字的平方
num = {i : i**2 for i in range(6)} print(num)需求二: 将两个列表合二为一成为一个字典 list = ['name','age'] information = ['yaoyuan',20]
list = ['name','age'] information = ['yaoyuan',20] myself = {list[i]:information[i] for i in range(len(list))} print(myself)需求三: 提取该字典中的大于100的数值对
score = {'chinese':99,'math':110,'english':103,'comprehensive liberal arts':206} score_need = {key : value for key,value in score.items() if value > 100} print(score_need)需求: 创建一个集合为下列集合中元素的平方 num = {1,1,2}
num = {1,1,2} num_need = {i**2 for i in num} print(num_need)