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')]
相关推荐
余槐i几秒前
Firecrawl 实战:将网站转换为大模型可用数据
人工智能·python·工具·firecrawl
shirsl2 分钟前
算法 Day 2 滑动窗口 + 栈 / 单调栈
开发语言·python·算法
步行cgn3 分钟前
Spring 启动报错:BeanFactory not initialized 的原因与解决
java·python·spring
菜鸟~noob2338 分钟前
【电子战】第08篇:多普勒测向的工程实现与优化【含matlab代码】
开发语言·matlab
菜鸟~noob23314 分钟前
【电子战】第06篇:干涉仪与相位差测向【含matlab代码】
开发语言·matlab
老王爱玩车31 分钟前
深入理解指针2
c语言·开发语言·学习
quantdash_cc34 分钟前
股票历史数据为什么比实时行情更重要?回测结果失真的根源可能就在 K 线数据
开发语言·python·数据分析·量化交易·股票数据·quantdash
光电的一只菜鸡1 小时前
为什么调整LSC会对AF产生影响
android·开发语言·kotlin
zhangjw341 小时前
第47篇:Java综合实战:电商秒杀系统(高并发场景)
java·开发语言
Web3&Basketball1 小时前
LLM 峰谷定价怎么吃满:一个能对账的错峰调度器
python·性能优化·大模型·任务调度·成本优化·deepseek·推理优化