《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中非常有用的工具,掌握它可以帮助你编写更简洁、高效的代码。

相关推荐
1373i3 分钟前
【Python】pytorch安装(使用conda)
pytorch·python·conda
keyinf07 分钟前
python网络爬取个人学习指南-(五)
python
kida_yuan25 分钟前
【从零开始】12. 一切回归原点
python·架构·nlp
离越词38 分钟前
C++day8作业
开发语言·c++·windows
℃CCCC1 小时前
请求库-axios
开发语言·华为·网络请求·harmonyos·deveco studio·axios请求·arkts编程
ling__i1 小时前
java day18
java·开发语言
矛取矛求1 小时前
日期类的实现
开发语言·c++·算法
大翻哥哥1 小时前
Python 2025:AI工程化与智能代理开发实战
开发语言·人工智能·python
站大爷IP1 小时前
Python文件处理:从基础操作到实战技巧全解析
python
在下雨5991 小时前
项目讲解1
开发语言·数据结构·c++·算法·单例模式