美文网首页
三元运算符

三元运算符

作者: 是阿离 | 来源:发表于2017-08-18 20:23 被阅读0次

    问题

    想要进行逻辑运算:如果A大于B,则A,否则B。

    按照java、js等的思维:(A > B) ? A : B。结果python直接给返回了个“你这问号是个啥,不认得”。<ignore>当然,这只是我翻译过来的。</ignore>

    现在想要知道python中是如何使用三元运算符

    方案

    对于问题中逻辑运算
    1、在python2.5版本以后,增加了一个:A if (A > B) else B。通过if else来组合成三元运算符。

    2、可以通过andor组合出一个三元运算符:((A > B) and A) or B。需要注意的是:如果A为空字符串'',则该表达式恒返回B。解释如下:

    A = ''
    B = 'B'
    print A and B #输出为空
    print A or B #输出为B
    

    Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True

    输入 布尔值
    1,-1,[“”] True
    0, “”, None, [], (), {}, (“”) False

    3、不使用三元运算符,使用if...else...(# → ⌒ →)

    参考文章

    Python语言技巧之三元运算符使用介绍

    相关文章

      网友评论

          本文标题:三元运算符

          本文链接:https://www.haomeiwen.com/subject/wlxzrxtx.html