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算法学习之桶排序算法实例(分块排序)
Dec 18 Python
wxPython事件驱动实例详解
Sep 28 Python
Python3中的真除和Floor除法用法分析
Mar 16 Python
Python爬取APP下载链接的实现方法
Sep 30 Python
利用Python脚本生成sitemap.xml的实现方法
Jan 31 Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 Python
python实现函数极小值
Jul 10 Python
django 捕获异常和日志系统过程详解
Jul 18 Python
Python实现线性判别分析(LDA)的MATLAB方式
Dec 09 Python
Python3 中sorted() 函数的用法
Mar 24 Python
pip安装tensorflow的坑的解决
Apr 19 Python
Python Matplotlib绘制条形图的全过程
Oct 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 XML error parsing SOAP payload on line 1
2010/06/17 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
PHP字符串长度计算 - strlen()函数使用介绍
2013/10/15 PHP
php生成EAN_13标准条形码实例
2013/11/13 PHP
laravel 5 实现模板主题功能
2015/03/02 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
PHP环境搭建的详细步骤
2016/06/30 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
YII框架关联查询操作示例
2019/04/29 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
2020/01/26 PHP
JavaScript CSS修改学习第二章 样式
2010/02/19 Javascript
js创建数据共享接口——简化框架之间相互传值
2011/10/23 Javascript
基于JQuery实现的类似购物商城的购物车
2011/12/06 Javascript
JavaScript执行效率与性能提升方案
2012/12/21 Javascript
jQuery让控件左右移动的三种实现方法
2013/09/08 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
js实现防止被iframe的方法
2015/07/03 Javascript
nodejs实现简单的gulp打包
2017/12/21 NodeJs
Vue 2.0 中依赖注入 provide/inject组合实战
2019/06/20 Javascript
Vue仿微信app页面跳转动画效果
2019/08/21 Javascript
python实现sublime3的less编译插件示例
2014/04/27 Python
用Python给文本创立向量空间模型的教程
2015/04/23 Python
Python网络编程之TCP与UDP协议套接字用法示例
2018/02/02 Python
Pytorch提取模型特征向量保存至csv的例子
2020/01/03 Python
一个精品风格的世界:Atterley
2019/05/01 全球购物
德国亚洲食品网上商店:asiafoodland.de
2019/12/28 全球购物
艺术爱好者的自我评价分享
2013/10/08 职场文书
超市促销活动总结
2014/07/01 职场文书
2014四风问题对照检查材料范文
2014/09/15 职场文书
招商引资工作汇报
2014/10/28 职场文书
2015年元旦标语大全
2014/12/09 职场文书
公司安全管理制度范本
2015/08/05 职场文书
企业愿景口号
2015/12/25 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis
Python合并pdf文件的工具
2021/07/01 Python