当前位置: 首页 > article >正文

python中的列表推导式详解

Python 中的列表推导式详解

列表推导式(List Comprehension)是 Python 提供的一种简洁而优雅的生成列表的方式。它能够在一行代码中完成循环与条件判断,使代码更加直观和易读。本文将从基础到进阶,带你全面了解列表推导式的用法。

  1. 基本语法

列表推导式的基本语法为:

[表达式 for 变量 in 可迭代对象 if 条件]

•	表达式:生成列表中每个元素的计算方式。
•	for 变量 in 可迭代对象:类似于常规的 for 循环,指定迭代的对象。
•	if 条件(可选):筛选满足条件的元素。
  1. 示例代码
    1. 简单生成列表

生成一个包含 0-9 的列表

numbers = [x for x in range(10)]
print(numbers) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

2.	添加条件筛选

生成一个仅包含偶数的列表

even_numbers = [x for x in range(10) if x % 2 == 0]
print(even_numbers) # [0, 2, 4, 6, 8]

3.	嵌套循环

生成一个二维坐标列表

coordinates = [(x, y) for x in range(3) for y in range(3)]
print(coordinates) # [(0, 0), (0, 1), …, (2, 2)]

4.	嵌套条件

筛选 x+y 为偶数的坐标

filtered_coordinates = [(x, y) for x in range(3) for y in range(3) if (x + y) % 2 == 0]
print(filtered_coordinates) # [(0, 0), (0, 2), (1, 1), (2, 0), (2, 2)]

  1. 注意事项
    • 列表推导式适合简单的逻辑场景,复杂逻辑应使用常规循环实现。
    • 对于嵌套推导式,建议分步拆解代码以提高可读性。

总结

列表推导式是 Python 编程的一项利器,通过它可以写出简洁、高效的代码。但在追求简洁的同时,也要注意代码的可读性和复杂性。掌握列表推导式,你的 Python 技能将更上一层楼


http://www.kler.cn/a/472566.html

相关文章:

  • ubuntu 20.04 安装 5.4 内核
  • SpringBoot日常:集成Kafka
  • vue3运行时执行过程步骤
  • 计算机网络之---TCP/IP四层模型
  • vue3中el-table实现多表头并表格合并行或列
  • EyeSoothe: Your Ultimate Eye Health Companion
  • 华灯已上:夜色跌宕绘情谱
  • 【AI日记】25.01.08
  • PLC实现HTTP协议JSON格式数据上报对接的参数配置说明
  • OBS Zoom to Mouse 脚本安装与使用指南
  • MySQL UDF提权
  • 1-【选修】逻辑回归
  • 2025新春烟花代码(二)HTML实现孔明灯和烟花效果
  • SpringBoot 使用 Cache 集成 Redis做缓存保姆教程
  • 能不能在家部署一个硬件实现远程唤醒局域网内所有电脑?
  • 从零手写实现redis(三)内存数据如何重启不丢失?
  • Spring Boot 项目自定义加解密实现配置文件的加密
  • ceph集群配置
  • IDEA的常用设置
  • LabVIEW软件Bug的定义与修改
  • HTML 音频(Audio)
  • IDEA 字符串拼接符号“+”位于下一行的前面,而不是当前行的末尾
  • 导航技术的分类
  • Swoole v6 正式发布
  • 软件架构的康威定律:AI如何重构团队协作模式
  • 【VUE+ElementUI】通过接口下载blob流文件设置全局Loading加载进度