列表推导式
1.定义:
使用简易方法,将可迭代对象转换为列表。
2.语法:
变量 = [表达式 for 变量 in 可迭代对象]
变量 = [表达式 for 变量 in 可迭代对象 if 条件]
3.说明:
如果if真值表达式的布尔值为False,则可迭代对象生成的数据将被丢弃。
| """ |
| 列表推导式 |
| 练习:exercise01.py |
| """ |
| |
| |
| list01 = [5, 56, 6, 7, 7, 8, 19] |
| |
| |
| |
| list02 = [item + 1 for item in list01] |
| print(list02) |
| |
| |
| |
| |
| |
| list02 = [item + 1 for item in list01 if item > 10] |
| |
列表推导式嵌套
对于列表推导式的嵌套,就是循环的嵌套直接平铺的写法,这个场景还有点不好理解,不过非常高效。
语法:
变量 = [表达式 for 变量1 in 可迭代对象1 for 变量2 in可迭代对象2]
传统写法:
| result = [] |
| for r in ["a", "b", "c"]: |
| for c in ["A", "B", "C"]: |
| result.append(r + c) |
推导式写法:
| result = [r + c for r in list01 for c in list02] |
综合对比效果
| result = [] |
| for r in ["a", "b", "c"]: |
| for c in ["A", "B", "C"]: |
| result.append(r + c) |
| |
| print(result) |
| |
| print([r + c for r in ["a", "b", "c"] for c in ["A", "B", "C"]]) |
OUTPUT:
| ['aA', 'aB', 'aC', 'bA', 'bB', 'bC', 'cA', 'cB', 'cC'] |
| ['aA', 'aB', 'aC', 'bA', 'bB', 'bC', 'cA', 'cB', 'cC'] |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」