在python中,可以把for循环写在一行,生成一个新的列表,使用起来非常方便,下面举几个简单例子体会一下。 1.简单的for…[if]…语句 list1 = [1,2,3,4,5,6,7,8,9] new_list = [x for x in list1 if x % 2 == 0] print new_list 输出: [2, 4, 6, 8] 2.把双层列表生成单层新列表 list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] new_list = [x for temp_list in list1 for x in temp_list] pri 在Python编程语言中,列表生成式(List Comprehension)是一种简洁且高效的语法结构,用于创建新的列表。这种技术利用了for循环和可选的if条件语句,可以在一行代码中完成对现有列表的处理。以下是对标题和描述中提到的知识点的详细解释: 1. **简单的for...[if]...语句**: 当你需要根据特定条件筛选列表中的元素时,可以使用for循环配合if条件。例如,给定一个包含1到9的整数列表`list1`,你可以通过列表生成式筛选出所有偶数,并存储在`new_list`中。示例代码如下: ```python list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] new_list = [x for x in list1 if x % 2 == 0] print(new_list) # 输出:[2, 4, 6, 8] ``` 这里,for循环遍历`list1`的每个元素,如果元素能被2整除(即`x % 2 == 0`),则该元素会被加入到`new_list`中。 2. **把双层列表生成单层新列表**: 当你有一个嵌套列表,希望将其展平为单层列表时,可以使用两层列表生成式。例如: ```python list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] new_list = [x for temp_list in list1 for x in temp_list] print(new_list) # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9] ``` 在这个例子中,外层的for循环遍历`list1`中的子列表`temp_list`,内层的for循环则遍历`temp_list`的每个元素`x`,将它们都添加到`new_list`中。 3. **把两个列表进行某种处理生成新列表**: 当你需要基于两个列表生成新的列表时,可以结合使用多个for循环和操作符。例如,创建元组或字符串组合: ```python list1 = [1, 2, 3] list2 = ['a', 'b', 'c'] new_list1 = [(x, y) for x in list2 for y in list1] # 组合元组列表 print(new_list1) # 输出:[(‘a’, 1), (‘a’, 2), (‘a’, 3), (‘b’, 1), (‘b’, 2), (‘b’, 3), (‘c’, 1), (‘c’, 2), (‘c’, 3)] new_list2 = ["%s%d" % (x, y) for x in list2 for y in list1] # 字符串组合拼接 print(new_list2) # 输出:['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3'] ``` 这里,两层for循环分别遍历`list2`和`list1`,并根据不同的需求(创建元组或拼接字符串)生成新的列表。 列表生成式不仅简洁,而且在处理大量数据时通常比使用传统的for循环更高效,因为它们通常可以被编译成优化过的字节码。此外,列表生成式还可以与其他Python特性(如map()、filter()和lambda表达式)结合使用,提供更加灵活的编程方式。 Python的列表生成式是其强大而富有表现力的语法之一,它使得列表的创建和操作变得更加简洁和直观。无论是在筛选、转换还是组合数据时,都能发挥出它的威力,让代码更具可读性和效率。在实际开发中,熟练掌握列表生成式能够提升编程体验,降低代码维护成本。
- 粉丝: 5
- 资源: 930
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 14-【培训体系构建】-如何塑造一支高效的企业内训师队伍.doc.docx
- 15-【培训体系构建】-如何提高企业文化培训活动的实效性——5W2H.doc.docx
- 13-【培训体系构建】-如何进行企业文化培训评估.doc.docx
- 16-【激励体系构建】-员工满意度调查问卷.doc.docx
- 18-【激励体系构建】-如何有效实施企业文化考核?.doc.docx
- 20-【传播体系构建】-企业文化主题宣传计划表(不含活动).doc.docx
- 21-【传播体系构建】-企业文化传播载体分类清单.doc.docx
- 19-【激励体系构建】-企业文化激励方案设计表.doc.docx
- 22-【传播体系构建】-企业文化活动费用预算表.doc.docx
- 23-【传播体系构建】-联想的单向传播、双向传播与体验传播.doc.docx
- 24-【传播体系构建】-海尔企业文化的全方位传播.doc.docx
- 26-【融入体系构建】-以“八大体系”为核心的企业文化工作评估.doc.docx
- 25-【融入体系构建】-企业文化评估体系构建实践指导.doc.docx
- 27-【融入体系构建】-企业文化调查问卷.docx
- 28-【融入体系构建】-班组文化建设考核指标体系.doc.docx
- 30-【融入体系构建】-常用管理制度清单.docx