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中的With语句
Feb 02 Python
python利用dir函数查看类中所有成员函数示例代码
Sep 08 Python
python操作mysql代码总结
Jun 01 Python
Python中.join()和os.path.join()两个函数的用法详解
Jun 11 Python
Python 16进制与中文相互转换的实现方法
Jul 09 Python
浅谈Django的缓存机制
Aug 23 Python
python生成特定分布数的实例
Dec 05 Python
python GUI库图形界面开发之PyQt5 UI主线程与耗时线程分离详细方法实例
Feb 26 Python
Python自动重新加载模块详解(autoreload module)
Apr 01 Python
Django静态资源部署404问题解决方案
May 11 Python
Jupyter安装链接aconda实现过程图解
Nov 02 Python
Python爬虫之Selenium实现键盘事件
Dec 04 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
php 安全过滤函数代码
2011/05/07 PHP
关于IIS php调用com组件的权限问题
2012/01/11 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
php去除头尾空格的2种方法
2015/03/16 PHP
php短信接口代码
2016/05/13 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
2020/02/27 PHP
js图片跟随鼠标移动代码
2015/11/26 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
AngularJS模块详解及示例代码
2016/08/17 Javascript
JavaScript生成验证码并实现验证功能
2016/09/24 Javascript
react系列从零开始_简单谈谈react
2017/07/06 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
微信小程序实现的点击按钮 弹出底部上拉菜单功能示例
2018/12/20 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
2019/02/11 Javascript
关于angular浏览器兼容性问题的解决方案
2020/07/26 Javascript
Python中的Matplotlib模块入门教程
2015/04/15 Python
详谈在flask中使用jsonify和json.dumps的区别
2018/03/26 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
2019/08/21 Python
设置jupyter中DataFrame的显示限制方式
2020/04/12 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
python如何安装下载后的模块
2020/07/03 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
印度婴儿用品在线商店:Firstcry.com
2016/12/05 全球购物
英国领先的杂志订阅网站:Magazine.co.uk
2018/01/25 全球购物
如何保障Web服务器安全
2014/05/05 面试题
标准毕业生自荐信范文
2013/11/04 职场文书
探矿工程师自荐信
2014/01/24 职场文书
《山谷中的谜底》教学反思
2014/04/26 职场文书
居委会个人对照检查材料思想汇报
2014/09/29 职场文书
2014年初一班主任工作总结
2014/11/08 职场文书
2015年重阳节慰问信
2015/03/23 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
《学会生存》读后感3篇
2019/12/09 职场文书
基于Python实现股票收益率分析
2022/04/02 Python