Python学习基础笔记二十六——推导式
创始人
2024-03-19 11:43:22
0

列表推导式:

例1:30以内能被3整除的数:

print([i for i in range(30) if i % 3 == 0])

结果:

例2: 30以内能被3整除的数的平方:

print([i**2 for i in range(30) if i % 3 == 0])

 结果:

 

例3:找到嵌套列表中名字含有两个‘e’的所有名字

names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'], ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]

names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]print([name for lst in names for name in lst if name.count('e') >= 2])

多层嵌套列表,不会太多,要考虑简洁性。

我们将[]换成(),那就变成了生成器。

字典推导式:

例1:将字典的key和value值对调:

mcase = {'a': 10, 'b': 34}
mcase_frequency = {mcase[k]: k for k in mcase}
print(mcase_frequency)

 例2:合并大小写对应的value值,将k统一成小写。

mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3}
mcase_frequency = {k.lower(): mcase.get(k.lower(), 0) + mcase.get(k.upper(), 0) for k in mcase.keys()}
print(mcase_frequency)

集合推导式:

例1:计算列表中每个值的平方,自带去重功能。

squared = {x**2 for x in [1, -1, 2]}
print(squared)
# Output: set([1, 4])

我们看到里面没有元组推导式。

各种推导式:生成器、列表、字典、集合

# 遍历操作

#筛选操作

相关内容

热门资讯

搭建温暖桥梁:湖南芙蓉律师事务... 这个冬天,湖南芙蓉律师事务所想搭一座“温暖桥梁”——发起“橙”意满满助农公益捐赠活动,计划捐赠20万...
原创 日... 目前中日关系的紧张局势已经无法用摩擦或争议这些温和的词汇来形容了。真正发生的变化,不仅仅是某一具体事...
央行报告:着力健全有利于“长钱... 新京报贝壳财经讯 12月26日,中国人民银行发布《中国金融稳定报告(2025)》。报告提出,下一步,...
从“小洛熙”事件谈起:芙蓉律所... 近期,宁波大学附属妇女儿童医院发生的“小洛熙”事件引发了社会广泛关注。一名五月龄婴儿的不幸离世,在牵...
如何看待精神病人犯罪,普通人如... 这起精神病人杀人案备受关注,审判当天,许多市民在法院外围观。 成都27岁女子家门口被害案一审宣判后,...
云南昆明发布4项沿边特色的制度... 人民网昆明12月27日电 (记者蔡树菁)12月26日,中国(云南)自由贸易试验区昆明片区举行制度创新...
原创 大... 大学生起诉父亲追讨学费电脑费:亲情与法律的边界之争 当22岁的大学生张某将亲生父亲告上法庭索要学费和...
索赔23.14亿元!吉利子公司... 红星资本局12月27日消息,12月26日晚间,欣旺达(300207.SZ)披露公告称,子公司欣旺达动...
深化数智赋能 北京市检察机关有... 人民网北京12月27日电 (记者王子锋)虚假诉讼破坏社会诚信、损害人民群众合法权益、危害司法公信力,...