python-推导式
推导式创建序列
推导式是从一个或者多个迭代器快速创建序列的一种方法。它可以将循环和条件判断结合,从而避免冗长的代码。推导式是典型的 Python 风格
一、列表推导式:
[表达式 for item in 可迭代对象 ]或者:{表达式for item in 可迭代对象 if条件判断}
>>> [x for x in range(1,5)]
[1, 2, 3, 4]
>>> [x*2 for x in range(1,5)]
[2, 4, 6, 8]
>>> [x*2 for x in range(1,20) if x%5==0 ]
[10, 20, 30]
>>> [aforain "abcdefg"]
['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> cells = [(row,col) for row in range(1,10) for col in range(1,10)]#可以使用两个循环
>>> print(cell)
二、字典推导式:
字典的推导式生成字典对象,格式如下:
{key_expression:value_expression for 表达式 in 可迭代对象}
类似于列表推导式,字典推导也可以增加 if 条件判断、多个 for 循环。
统计文本中字符出现的次数:
info = { i:100 for i in range(10) if i > 5}
print(info)
data = "query=fff&_asf=www.sogou.com&w=01019900&p=40040100&ie=utf8&from=index-nologin&s_from=index"
result = {item.split('=')[0]: item.split('=')[1] for item in data.split("&")}
print(result)
## {'query': 'fff', '_asf': 'www.sogou.com', 'w': '01019900', 'p': '40040100', 'ie': 'utf8', 'from': 'index-nologin', 's_from': 'index'}
三、集合推导式
集合推导式生成集合,和列表推导式的语法格式类似:
list=[1,2,54,67,2,3,5,32,2,2,4,4,4,4]
result={x for x in list}
print(result)
#{32, 1, 2, 3, 67, 5, 4, 54}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了