python实现问号表达式(?)的方法


Posted in Python onNovember 27, 2013

python中的and和or和其它语言的区别很大
其它语言中的and和or都是返回bool类型的结果,python不是。它返回的是做and和or运算的其中一个值。
那个值决定了这个表达式的值,就返回那个值。

>> 5 and ''

这里结果是'', 空字符串, 因为是它导致了这个表达式为false.
也就是所在and中,只有前面一个值是false的时候,才有可能成为结果。否则就是后面的值为结果。

了解了and和or运行的过程,那么就可以实现?表达式了:

if (expression):
     return truevalue
else:
    return falsevalue

和这个等价的写法是(类似?号表达式):

expression and truevalue or falsevalue
#或者
(expression and (truevalue,) or (falsevalue,))[0] #感谢snake117提供的建议
#这种是避免truevalue有可能是false的情况,比如空字符串
Python 相关文章推荐
Python中的引用和拷贝浅析
Nov 22 Python
Python读取mp3中ID3信息的方法
Mar 05 Python
python按照多个字符对字符串进行分割的方法
Mar 17 Python
Python 调用PIL库失败的解决方法
Jan 08 Python
Flask框架模板继承实现方法分析
Jul 31 Python
pytorch 输出中间层特征的实例
Aug 17 Python
YUV转为jpg图像的实现
Dec 09 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
Apr 20 Python
python能自学吗
Jun 18 Python
怎么快速自学python
Jun 22 Python
python使用ctypes库调用DLL动态链接库
Oct 22 Python
Python实现Matplotlib,Seaborn动态数据图
May 06 Python
Python时区设置方法与pytz查询时区教程
Nov 27 #Python
详细介绍Python语言中的按位运算符
Nov 26 #Python
haskell实现多线程服务器实例代码
Nov 26 #Python
python自动化工具日志查询分析脚本代码实现
Nov 26 #Python
python翻译软件实现代码(使用google api完成)
Nov 26 #Python
python高并发异步服务器核心库forkcore使用方法
Nov 26 #Python
跨平台python异步回调机制实现和使用方法
Nov 26 #Python
You might like
web方式ftp
2006/10/09 PHP
php中判断字符串是否全是中文或含有中文的实现代码
2011/09/16 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php文件服务实现虚拟挂载其他目录示例
2014/04/17 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
PHP时间函数使用详解
2019/03/21 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
2020/04/07 PHP
javascript add event remove event
2008/04/07 Javascript
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
javascript学习(一)构建自己的JS库
2013/01/02 Javascript
移动节点的jquery代码
2014/01/13 Javascript
推荐 21 款优秀的高性能 Node.js 开发框架
2014/08/18 Javascript
JavaScript中5种调用函数的方法
2015/03/12 Javascript
基于javascript实现窗口抖动效果
2016/01/03 Javascript
Bootstrap菜单按钮及导航实例解析
2016/09/09 Javascript
AngularJS入门教程之模块化操作用法示例
2016/11/02 Javascript
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
微信小程序 自定义Toast实例代码
2017/06/12 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
angularJs自定义过滤器实现手机号信息隐藏的方法
2018/10/08 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
[03:24]2014DOTA2国际邀请赛 神秘商店生意火爆
2014/07/18 DOTA
[44:15]国士无双DOTA2 6.82版本详解(上)
2014/09/28 DOTA
[02:51]DOTA2 2015国际邀请赛中国区预选赛第一日战报
2015/05/27 DOTA
python给微信好友定时推送消息的示例
2019/02/20 Python
python3使用matplotlib绘制条形图
2020/03/25 Python
Julep官网:美容产品和指甲油
2017/02/25 全球购物
Spongelle官网:美国的创意护肤洗护品牌
2019/05/15 全球购物
Shop Apotheke瑞士:您的健康与美容网上商店
2019/10/09 全球购物
初中校园广播稿
2014/02/02 职场文书
党员学习正风肃纪思想汇报
2014/09/12 职场文书
2014年学习部工作总结
2014/11/12 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
会计继续教育培训心得体会
2016/01/19 职场文书
卖车协议书范文
2016/03/23 职场文书