5.6Python之列表推导式

列表推导式(List comprehensions) 是一种简洁的语法,用于创建新的列表,并可以在创建过程中对元素进行转换、筛选或组合操作

列表推导式的一般形式为:

python 复制代码
new_list = [expression for item in iterable if condition]

其中:

  • expression 是要应用于每个元素的表达式或操作。
  • **item**是来自可迭代对象(如列表、元组或字符串)的每个元素。
  • **iterable**是可迭代对象,提供要遍历的元素。
  • **condition**是一个可选的条件,用于筛选出满足条件的元素。

以下是列表推导式的使用案例:

案例一,创建一个包含1到5的平方的列表:

python 复制代码
squares = [x**2 for x in range(1, 6)]
print(squares)  

# [1, 4, 9, 16, 25]

案例二,筛选出长度大于等于5的字符串:

python 复制代码
words = ["apple", "banana", "cherry", "date", "elderberry"]
filtered_words = [word for word in words if len(word) >= 5]
print(filtered_words)  

# ["apple", "banana", "cherry"]

案例三,将两个列表中的元素进行组合:

python 复制代码
numbers = [1, 2, 3]
letters = ['A', 'B', 'C']
combined = [(number, letter) for number in numbers for letter in letters]
print(combined)  

# [(1, 'A'), (1, 'B'), (1, 'C'), (2, 'A'), (2, 'B'), (2, 'C'), (3, 'A'), (3, 'B'), (3, 'C')]
相关推荐
benchmark_cc1 小时前
如何用 Python + QuantDash 快速构建高胜率“配对交易(Pairs Trading)”策略?
开发语言·人工智能·python·pandas·量化交易·quantdash
程序员无隅2 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
Python+992 小时前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
二炮手亮子2 小时前
浅记java线程池
java·开发语言
zmzb01033 小时前
C++课后习题训练记录Day157
开发语言·c++
dunge20263 小时前
2026年7月最新ChatGPT Plus / Pro 与 Codex:当 AI Agent 最新5.6版本来袭,必须理解事务、幂等与补偿
开发语言·人工智能·python
爱吃牛肉的大老虎4 小时前
rust基础之环境搭建
java·开发语言·rust
openKylin4 小时前
与全球技术演进同频,openKylin 3.0从C迈向Rust
c语言·开发语言·rust·开源·开放原子·openkylin
小白学大数据5 小时前
两周完成爬虫技术栈升级:Scrapy 迁移 Crawlo 的路径与取舍
爬虫·python·scrapy
用户8356290780515 小时前
使用 Python 在 Excel 中添加和自定义文本框
后端·python