手机
当前位置:查字典教程网 >脚本专栏 >python >python实现问号表达式(?)的方法
python实现问号表达式(?)的方法
摘要:python中的and和or和其它语言的区别很大其它语言中的and和or都是返回bool类型的结果,python不是。它返回的是做and和o...

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 list 合并连接字符串的方法

python 切片和range()用法说明

python 实现归并排序算法

Python 条件判断的缩写方法

python批量下载图片的三种方法

Python正则表达式介绍

python实现系统状态监测和故障转移实例方法

python创建只读属性对象的方法(ReadOnlyObject)

python 中的列表解析和生成表达式

python和shell变量互相传递的几种方法

精品推荐
分类导航