python中有三元运算符吗?

有时候解决问题时突发奇想,我在Php里可以使用三元运算符来做赋值操作,我在python里是否也有这种操作呢? 我觉得吧,这个基础知识还是非常重要的,因为有时候就偏偏要用,你却不知道;再有就是遇到别人考你的时候,也会很尴尬。

有时候解决问题时突发奇想,我在Php里可以使用三元运算符来做赋值操作,我在python里是否也有这种操作呢?
我觉得吧,这个基础知识还是非常重要的,因为有时候就偏偏要用,你却不知道;再有就是遇到别人考你的时候,也会很尴尬。
答案是有,早在python2.5就已经存在了。
但是你需要记住语法阿,我们先来看一下php的三元运算符是怎么搞的

条件 ? 成立时的值 :不成立的值
举个例子就明白了哈

/***给item赋值,条件是 $a和$b比较。如果a小于b,那么条件成立 返回 a小了 否则 返回 a大了***/
$item = $a<$b ? "a 小了" : "a大了";

另外 php7还有更神滴操作,这里不写,只是记下知识锚点。

那python的又是怎么个搞法呢?

语法:

a if 条件 else b

解释:根据条件的布尔值来判断返回a 还是 b;如果为真,就返回a,为假就返回b

举个例子:

>>> 'true' if True else 'false'
'true'
>>> 'true' if False else 'false'
'false'

懂了吧?
别蒙逼了。

说这么多,当然也有参考文档

  1. Conditional expressions
  2. Conditional expressions

本文参考gitBook上的一篇文章


参考文献

相关文章