Python 三元表达式、列表推导式、生成器表达式
一、三元表达式
三元表达式,也称为if,else的紧凑形式。具体用法如下:
def max(a,b):if a>b:return aelse:return bdef max(a,b):return a if a>b else b
上面这两个函数实现的功能是完全一样的。第二个函数中 a if a>b else b 就是一个三元表达式。 左边是条件为真时返回的值,中间是判断条件,右边是条件假返回的值。
二、列表推导式
大致的格式如下 [表达式 for 变量 in 列表 if 条件] ,其中if条件是可选的。
我们先来看看列表推导式的一些简单例子:
print([i**2 for i in range(10)]) #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]print([i**2 for i in range(10) if i>=5] ) #[25, 36, 49, 64, 81]print([x*y for x in [1,2,3] for y in [4,5,6]]) #[4, 5, 6, 8, 10, 12, 12, 15, 18]
其实既然有列表推导式,那么同样也有集合推导式,字典推导式
print({x*y for x in [1,2,3] for y in [4,5,6]}) #{4, 5, 6, 8, 10, 12, 15, 18}#实现字典的key和value快速交换: dic1={'a':1,'b':2} dic2={v: k for k, v in dic1.items()} print(dic2) #{1: 'a', 2: 'b'}
三、生成器表达式
将列表推导式的[]换成()就变成生成器表达式了。
a=(i*i for i in range(10)) print(a) #<generator object <genexpr> at 0x027DE180> print(list(a)) #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
转载于:https://www.cnblogs.com/linshuhui/p/8987356.html
Python 三元表达式、列表推导式、生成器表达式相关推荐
- Python入门之三元表达式\列表推导式\生成器表达式\递归匿名函数\内置函数
本章目录: 一.三元表达式.列表推导式.生成器表达式 二.递归调用和二分法 三.匿名函数 四.内置函数 ================================================ ...
- mysql数据字典生成器_「python技术」列表推导、生成器表达式和字典推导的差异及其示例
#开往春天新创作大赛# 前言 列表推导式构建列表的快捷方式,而生成器表达式则可以用来创建其他任何类型的序列.自python2.7以后,列表推导和生成器表达式的概念就应用到了字典上,所以就有了字典推导, ...
- format函数python生成列表_python 全栈开发,Day14(列表推导式,生成器表达式,内置函数)...
一.列表生成式 生成1-100的列表 li = [] for i in range(1,101): li.append(i) print(li) 执行输出: [1,2,3...] 生成python1期 ...
- python之生成器(~函数,列表推导式,生成器表达式)
一.生成器 概念:生成器的是实质就是迭代器 1.生成器的贴点和迭代器一样,取值方式也和迭代器一样. 2.生成器一般由生成器函数或者声称其表达式来创建,生成器其实就是手写的迭代器. 3.在python中 ...
- 列表推导式 生成器表达式
推导式 comprehensions(又称解析式):是 Python 中很强大的.很受欢迎的特性,具有语言简洁,速度快等优点 列表推导式 就是一个简单的公式,我们用这个列表推导式,把你好几行的for循 ...
- Python 列表推导 、生成器表达式与声明式编程
1.****列表推导********* 用到函数的一个常见的操作是将其用于列表的所有项,并使用结果创建一个新的列表.例如: # coding=utf-8 ''' ****列表推导********* 用 ...
- python关键字列表的表达式,python 列表推导和生成器表达式的使用
序列 序列是指一组数据,按存放类型分为容器序列与扁平序列,按能否被修改分为不可变序列与可变序列. 容器序列与扁平序列 容器序列存放的是对象的引用,包括list.tuple.collections.de ...
- Python 中的列表推导式
Python 中的列表推导式 简单用法 添加多个条件 多个列表使用 替换 Reduce 和 Lambda 嵌套列表推导式 列表推导式是一种 Python 构造,可减少生成新列表或过滤现有列表所需的代码 ...
- python三元表达式求值_python 三元表达式的 列表推导式 生成器推导式
python中三元表达式的语法如下 ===if else result = x if condition else y 另外一种三元表达式,比较少见 result = (x, y)[condition ...
- python 优雅的 列表推导式(for in if)生成器表达式 集合推导式和字典推导式 列表动态构建器(不用先创建空容器【空列表】,再一个一个append()进去那样麻烦了)
文章目录 用于创建列表也是非常方便的,比如获取当前连接的所有Intel Realsense摄像头序列号 写代码的时候偶然将这段优雅的代码码了出来,感觉很神奇,就去搜索,原来这种语法叫做列表推导式(fo ...
最新文章
- 不只会卖萌:皮卡丘们真的能改造你的大脑
- python程序员在公司都是做什么的-为什么企业很难招聘到好的python程序员?
- VTK:可视化算法之CarotidFlowGlyphs
- Effective C++ 条款44
- Linux常用命令(第二版) --帮助命令
- JAVA Pattern和Matcher 的用法
- loinc编码_通用检验编码系统(Universal Laboratory Test Code System)于香港电子健康纪录计划的应用...
- iPhone折叠屏长啥样?网友迫不及待做出一个渲染视频
- wordpress如何让百度快速收录_安顺如何发布信息百度收录在首页
- linux 虚拟机设置静态ip
- 自用的项目管控周报模板
- 史上最全股票指标图文详解(原创)
- 纽博涛在CSDN上开通博客啦
- linux gz是什么文件,gz是什么
- xp计算机u盘重装系统,解决戴尔电脑u盘重装系统xp教程
- 【CSS3】渐变背景
- 解决联想小新air14装虚拟机镜像时蓝屏问题
- SA387Gr11Cl2是什么材质
- Cannot find module 'chalk'
- 黑马程序员————IO流4(day21)
热门文章
- hadoop2.6.4 在ubuntu14.04下的搭建
- Python学习札记(十一) Function2 函数定义
- 用聚合数据API快速写出小程序
- 设计模式总结(Java)—— 单例模式
- iOS开发之-- 从当前隐藏导航界面push到下一个显示导航界面出现闪一下的问题
- 自动化运维专题之zabbix课程内容大纲
- @Controller 不能访问到
- IIS7.5 配置MVC3.0 伪静态,不能访问html伪静态页面
- 执行计划中各字段各模块描述
- 【原创】构建高性能ASP.NET站点 第五章—性能调优综述(后篇)