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 05 Python
Python测试网络连通性示例【基于ping】
Aug 03 Python
python3 http提交json参数并获取返回值的方法
Dec 19 Python
python paramiko利用sftp上传目录到远程的实例
Jan 03 Python
Python机器学习算法库scikit-learn学习之决策树实现方法详解
Jul 04 Python
Django组件content-type使用方法详解
Jul 19 Python
Python实现微信机器人的方法
Sep 06 Python
Pytorch基本变量类型FloatTensor与Variable用法
Jan 08 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
Pytorch实现将模型的所有参数的梯度清0
Jun 24 Python
python复合条件下的字典排序
Dec 18 Python
用Python自动清理电脑内重复文件,只要10行代码(自动脚本)
Jan 09 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防注
2007/01/15 PHP
ThinkPHP与PHPExcel冲突解决方法
2011/08/08 PHP
PHP中获取文件扩展名的N种方法小结
2012/02/27 PHP
Laravel模板引擎Blade中section的一些标签的区别介绍
2015/02/10 PHP
php使用curl并发减少后端访问时间的方法分析
2016/05/12 PHP
使用js操作cookie的一点小收获分享
2013/09/03 Javascript
javascript实现简易计算器的代码
2016/05/31 Javascript
浅谈JavaScript 中有关时间对象的方法
2016/08/15 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
JS实现字符串去重及数组去重的方法示例
2018/04/21 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
详解vue项目中使用token的身份验证的简单实践
2019/03/08 Javascript
javascript实现遮罩层动态效果实例
2019/05/14 Javascript
使用webpack将ES6转化ES5的实现方法
2019/10/13 Javascript
JS检测浏览器开发者工具是否打开的方法详解
2020/10/02 Javascript
Python 基础教程之包和类的用法
2017/02/23 Python
django认证系统 Authentication使用详解
2019/07/22 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
Python基于百度AI实现OCR文字识别
2020/04/02 Python
文件上传服务器-jupyter 中python解压及压缩方式
2020/04/22 Python
python requests包的request()函数中的参数-params和data的区别介绍
2020/05/05 Python
Anaconda+vscode+pytorch环境搭建过程详解
2020/05/25 Python
python根据用户需求输入想爬取的内容及页数爬取图片方法详解
2020/08/03 Python
Python如何执行系统命令
2020/09/23 Python
使用HTML5 Canvas API控制字体的显示与渲染的方法
2016/03/24 HTML / CSS
Mixbook加拿大:照片书,照片卡,剪贴簿,年历和日历
2017/02/21 全球购物
捷克体育用品购物网站:D-sport
2017/12/28 全球购物
以色列的身体护理及家居香薰品牌:Sabon NYC
2018/02/23 全球购物
精神文明建设标语
2014/06/16 职场文书
弘扬焦裕禄精神走群众路线思想汇报
2014/09/12 职场文书
基层干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
给病人的慰问信
2015/03/23 职场文书
九年级数学教学反思
2016/02/17 职场文书
Windows server 2012 R2 安装IIS服务器
2022/04/29 Servers
win10滚动条自动往上跑怎么办?win10滚动条自动往上跑的解决方法
2022/08/05 数码科技