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 相关文章推荐
DJANGO-ALLAUTH社交用户系统的安装配置
Nov 18 Python
Python随机读取文件实现实例
May 25 Python
pandas实现选取特定索引的行
Apr 20 Python
Python操作Oracle数据库的简单方法和封装类实例
May 07 Python
十行代码使用Python写一个USB病毒
Jun 21 Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
Feb 29 Python
python实现密码强度校验
Mar 18 Python
django 连接数据库出现1045错误的解决方式
May 14 Python
keras得到每层的系数方式
Jun 15 Python
python中print格式化输出的问题
Apr 16 Python
python实现三次密码验证的示例
Apr 29 Python
忆童年!用Python实现愤怒的小鸟游戏
Jun 07 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
利用 window_onload 实现select默认选择
2006/10/09 PHP
PHP开启gzip页面压缩实例代码
2010/03/11 PHP
PHP使用逆波兰式计算工资的方法
2015/07/29 PHP
js 中 document.createEvent的用法
2010/08/29 Javascript
js常用排序实现代码
2010/12/28 Javascript
javascript实现实时输出当前的时间
2015/04/27 Javascript
javascript实现树形菜单的方法
2015/07/17 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
2016/11/01 Javascript
express框架实现基于Websocket建立的简易聊天室
2017/08/10 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
js prototype深入理解及应用实例分析
2019/11/25 Javascript
js实现弹窗效果
2020/08/09 Javascript
[03:49]DOTA2 2015国际邀请赛中国区预选赛第二日现场百态
2015/05/27 DOTA
python删除特定文件的方法
2015/07/30 Python
python爬虫之urllib3的使用示例
2018/07/09 Python
pandas 条件搜索返回列表的方法
2018/10/30 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
python 使用while循环输出*组成的菱形实例
2020/04/12 Python
CSS3的transition和animation的用法实例介绍
2014/08/20 HTML / CSS
HTML5 Canvas自定义圆角矩形与虚线示例代码
2013/08/02 HTML / CSS
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
Android面试题及答案
2015/09/04 面试题
家居设计专业个人自荐信范文
2013/11/26 职场文书
加拿大探亲邀请信
2014/01/28 职场文书
党支部承诺书
2015/01/20 职场文书
运动会闭幕式主持词
2015/07/01 职场文书
用Python简陋模拟n阶魔方
2021/04/17 Python
OpenCV-Python实现人脸磨皮算法
2021/06/07 Python
python装饰器代码解析
2022/03/23 Python
Android Studio实现带三角函数对数运算功能的高级计算器
2022/05/20 Java/Android
css样式important规则的正确使用方式
2022/06/10 HTML / CSS