推导式

推导式:用一句话生成一个列表,字典,集合

列表推导式:

语法:  [结果  for循环 判断]

lst = [i for i in range(100) if i%2==1]
print(lst)

 

寻找名字中带有两个e的人的名字
names = [['Tom', 'Billy', 'Jefferson' , 'Andrew' , 'Wesley' , 'Steven' ,'Joe'],
         [ 'Alice', 'Jill' , 'Ana', 'Wendy', 'Jennifer', 'Sherry' , 1]]

lst = [name for line in names for name in line if type(name) == str and name.count("e") == 2]
print(lst)

字典推导式:

把[11,22,33,44] => {0:11,1:22,2:33}
lst = [11,22,33,44]
dic = {i:lst[i] for i in range(len(lst)) if i < 2} # 字典推导式就一行
print(dic)
语法:{k:v for循环 条件筛选}

集合推导式:

s = {i for i in range(100)} # 可去除重复
posted @ 2021-01-18 13:39  苦行僧冬*婷  阅读(75)  评论(0)    收藏  举报