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')]
相关推荐
2301_809244533 分钟前
mysql如何处理大量重复值索引_mysql索引存储特征分析.txt
jvm·数据库·python
咋吃都不胖lyh7 分钟前
IVF_FLAT 和 HNSW 是两种最核心的近似最近邻(ANN)索引算法
python
TIEM_6910 分钟前
C++ vector容器全面解析:从入门到精通
开发语言·c++
2401_8844541511 分钟前
如何管理只读表空间的备份_跳过只读表空间的RMAN优化策略
jvm·数据库·python
xiaoye-duck11 分钟前
Qt 入门指南:从Qt历史背景、框架认知到安装和环境搭建
开发语言·qt
Irissgwe11 分钟前
c++多态
开发语言·c++·多态
lingran__12 分钟前
C++_类和对象(上)
开发语言·c++
woxihuan12345616 分钟前
CSS移动端实现响应式导航菜单_利用媒体查询切换显示隐藏状态
jvm·数据库·python
CCPC不拿奖不改名17 分钟前
PostgreSQL数据库部署linux服务器流程
linux·服务器·数据库·windows·python·docker·postgresql
曲幽18 分钟前
你的Agent API还在裸奔?从认证到沙箱,我用FastAPI搭了几道防线
python·fastapi·web·security·jwt·oauth2·limit·sandbox·ai agent