《Python基础》之列表推导式(列表生成式)

目录

简介

用法

1、基本列表推导式

结果如下

2、待条件的列表推导式

结果如下

3、嵌套列表推导式

结果如下

4、使用函数

结果如下

[5、 处理字符串](#5、 处理字符串)

结果如下

总结

优点

注意事项


简介

列表推导式(List Comprehension)是Python中一种简洁且强大的语法,用于创建列表。它允许你在一行代码中生成一个新的列表,通常基于现有的列表或其他可迭代对象。列表推导式的基本结构如下:

python 复制代码
[expression for item in iterable if condition]
  • expression :对**item**进行操作的表达式。

  • item :从**iterable**中取出的元素。

  • iterable:可迭代对象(如列表、元组、字符串等)。

  • if condition :可选的条件,只有满足条件的**item**才会被包含在新列表中。

用法

1、基本列表推导式

生成一个包含1到10的平方数的列表

python 复制代码
list1 = [x**2 for x in range(1,11)]
print(list1)
结果如下

2、待条件的列表推导式

生成一个包含1到10中偶数的平方的列表

python 复制代码
list2 = [x**2 for x in range(1,11) if x%2==0]
print(list2)
结果如下

3、嵌套列表推导式

将以下列表拆分成含单个元素的列表

list3 = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]

python 复制代码
list3 = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
list4 = [j for i in list3 for j in i]
print(list4)
结果如下

4、使用函数

生成一个包含1到10的平方数的列表,但使用函数来计算平方

python 复制代码
def square(x):
    return x**2

squares = [square(x) for x in range(1, 11)]
print(squares)  
结果如下

5、 处理字符串

生成一个包含字符串中所有大写字母的列表

python 复制代码
string = "Hello World"
uppercase_letters = [char for char in string if char.isupper()]
print(uppercase_letters)  
结果如下

总结

优点

  • 简洁:列表推导式可以用一行代码完成复杂的列表生成任务。

  • 高效 :通常比使用for循环和append方法更快。

  • 可读性:在适当的情况下,列表推导式可以提高代码的可读性。

注意事项

  • 避免过度复杂 :如果列表推导式变得过于复杂,可能会影响代码的可读性。在这种情况下,使用传统的for循环可能更为合适。

  • 嵌套列表推导式:嵌套的列表推导式可以处理更复杂的情况,但同样需要注意可读性。

列表推导式是Python中非常有用的工具,掌握它可以帮助你编写更简洁、高效的代码。

相关推荐
databook1 小时前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar2 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
用户8356290780513 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_3 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
数据智能老司机9 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机10 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i10 小时前
drf初步梳理
python·django
每日AI新事件10 小时前
python的异步函数
python