Python列表推导式:语法、条件过滤与嵌套应用详解

小满
小满
发布时间:2026-10-13 | 3人浏览过
原创

本文深入解析Python列表推导式的核心用法,涵盖基础创建、条件过滤及多层嵌套循环场景。通过对比传统for循环与推导式代码,展示如何简化逻辑并提升代码可读性,同时提供生成特定范围列表的实战案例,帮助开发者掌握高效的数据处理技巧。

列表推导式概述

列表推导式是一种用于轻量级创建列表的语法结构。

基础语法示例

基础语法示例


# 创建一个0-10的列表
a = [x for x in range(11)]
print(a)
"""
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
"""

上述列表推导式的功能等同于常规循环,但代码更为精简。


a = []
for x in range(10):
  a.append(x)

条件筛选应用

在循环中应用if条件筛选


# 创建一个1-10之间偶数的列表
a = [x for x in range(11) if x%2==0]
"""
输出结果:
[0, 2, 4, 6, 8, 10]
"""

其等价的传统写法如下


a = []
for x in range(11):
  if x%2 == 0:
    a.append(x)

多层循环嵌套

涉及两个for循环的情况


a = [(x,y) for x in range(3) for y in range(3)]
print(a)
"""
输出结果:
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
"""

对应的等价代码为


a = []
for x in range(3):
  for y in range(3):
    a.append((x,y))

实战练习与转换

实战练习

生成一个[[1,2,3],[4,5,6]....]的列表最大值在100以内

首先考虑一下正常情况我们应该怎么写


a = []
for x in range(1,100,3):
  a.append([x,x+1,x+2])

然后再把它转换成列表推导式


a = [[x,x+1,x+2] for x in range(1,100,3)]

文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表