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学习小技巧之列表项的推导式与过滤操作
May 20 Python
详解python的webrtc库实现语音端点检测
May 31 Python
python实现月食效果实例代码
Jun 18 Python
python 猴子补丁(monkey patch)
Jun 26 Python
pandas 对日期类型数据的处理方法详解
Aug 08 Python
Python英文文章词频统计(14份剑桥真题词频统计)
Oct 13 Python
python用quad、dblquad实现一维二维积分的实例详解
Nov 20 Python
python脚本实现mp4中的音频提取并保存在原目录
Feb 27 Python
解决Django no such table: django_session的问题
Apr 07 Python
pandas分批读取大数据集教程
Jun 06 Python
浅谈Python响应式类库RxPy
Jun 14 Python
Python函数中的不定长参数相关知识总结
Jun 24 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的SQL注入实现(测试代码安全不错)
2011/02/27 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
PHP生成器简单实例
2015/05/13 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
js的2种继承方式详解
2014/03/04 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
JS表的模拟方法
2015/02/05 Javascript
js点击文本框弹出可选择的checkbox复选框
2016/02/03 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
2017/03/29 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
防止页面url缓存中ajax中post请求的处理方法
2017/10/10 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
微信小程序实现跳转的几种方式总结(推荐)
2019/04/24 Javascript
Vue中使用wangeditor富文本编辑的问题
2021/02/07 Vue.js
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
python 排列组合之itertools
2013/03/20 Python
Python深入学习之对象的属性
2014/08/31 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
python编写分类决策树的代码
2017/12/21 Python
python 时间信息“2018-02-04 18:23:35“ 解析成字典形式的结果代码详解
2018/04/19 Python
Python拼接微信好友头像大图的实现方法
2018/08/01 Python
python utc datetime转换为时间戳的方法
2019/01/15 Python
python 实现提取某个索引中某个时间段的数据方法
2019/02/01 Python
numpy下的flatten()函数用法详解
2019/05/27 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
python 如何去除字符串头尾的多余符号
2019/11/19 Python
Win10里python3创建虚拟环境的步骤
2020/01/31 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
利用CSS3实现毛玻璃效果示例源码
2016/09/25 HTML / CSS
英国最大的老式糖果店:A Quarter Of
2017/04/08 全球购物
2014年五一活动策划方案
2014/03/15 职场文书
精彩的演讲稿开头
2014/05/08 职场文书
写给媳妇的检讨书
2015/05/06 职场文书
大学毕业典礼致辞
2015/07/29 职场文书
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS
Apache SeaTunnel实现 非CDC数据抽取
2022/05/20 Servers