博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
列表推导式和字典推导式是什么?
阅读量:5037 次
发布时间:2019-06-12

本文共 873 字,大约阅读时间需要 2 分钟。

它们是可以轻松创建字典和列表的语法结构。
由输出项,列表项,过滤项组成,过滤项为bool值可省略
[expr for itm in collection if condition] 列表常规推导
lst = [11,22,33,44]result = [i for i in range(10) if i%2==0]print(result)#注意是==,否则报错lst = [11,22,33,44]result = [i for i in lst if i%2==0]print(result)
zero = [0,-1,5,3,-9,-3,6,2]zero_list = [x**2 for x in zero if x >0]print(zero_list)

 

(expr for itm in collection if condition) 列表迭代推导,
也可以说是生成器表达式,这个给出的结果是一个生成器
lst = [11,22,33,44]result = (i for i in lst if i%2==0)print(result)
at 0x0000000004DA9F68>

{key: value for (key, value) in iterable}字典推导

lst=[1,2,3,4,5]res={i:'python'+str(i)+'期' for i in lst if i>3}print(res)
打印结果:{4: 'python4期', 5: 'python5期'}
{expr for itm in collection if condition} 集合推导
 
lst=[1,2,3,4,5,5,2,3]res={i for i in lst if i>0}print(res)# 结果直接过滤重复元素
{1, 2, 3, 4, 5}

转载于:https://www.cnblogs.com/apollo1616/articles/9785368.html

你可能感兴趣的文章
Cocos2d-x3.0 文件处理
查看>>
全面整理的C++面试题
查看>>
Web前端从入门到精通-9 css简介——盒模型1
查看>>
Activity和Fragment生命周期对比
查看>>
OAuth和OpenID的区别
查看>>
android 分辨率自适应
查看>>
查找 EXC_BAD_ACCESS 问题根源的方法
查看>>
国外媒体推荐的5款当地Passbook通行证制作工具
查看>>
日常报错
查看>>
list-style-type -- 定义列表样式
查看>>
hibernate生成表时,有的表可以生成,有的却不可以 2014-03-21 21:28 244人阅读 ...
查看>>
转:C++到底还能做什么? C++的前景分析
查看>>
在iphone程序中打开word、execl、pdf等文档
查看>>
mysql-1045(28000)错误
查看>>
2-Fifth Scrum Meeting20151205
查看>>
最大流
查看>>
Ubuntu 编译出现 ISO C++ 2011 不支持的解决办法
查看>>
前端开发模式
查看>>
JavaScript和angularJs语法支持严格模式:”use strict”
查看>>
HashMap、HashTable、LinkedHashMap和TreeMap用法和区别
查看>>