24-python数据序列(推导式)

it2026-03-12  3

一.推导式的作用

推导式的作用很单纯,简化代码,没了!就这么简单

二.列表推导式(列表生成式)

1.普通列表

用一个表达式来创建一个有规律的列表抑或是控制一个有规律的列表

需求:实现一个包含数字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)

2.带if的列表推导式

需求:创建一个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)

*3.多个for实现列表推导式

需求:创建列表 [(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)
最新回复(0)