浅谈python为什么不需要三目运算符和switch

634次阅读  |  发布于5年以前

对于三目运算符(ternary operator),python可以用conditional expressions来替代

如对于x<5?1:0可以用下面的方式来实现


    1if x<5else 0

注: conditional expressions是在python 2.5之前引入的,所以以上代码仅适用于2.5以及之后的版本

对于2.5之前的版本,可以用下面这种形式


    X<5and1or 0

对于switch,我们完全可以用dictionary来实现,看下面的例子


    >>>def switch(choice):
    return dict(enumerate(range(4)))[choice]

    >>> switch(1)
    >>> switch(0)


    values = {
      value1: do_something1,
      value2: do_something2,
      ...
      valueN: do_somethingN,
      }

    values.get(var, do_default_something)()


      

以上就是小编为大家带来的浅谈python为什么不需要三目运算符和switch全部内容了,希望大家多多支持脚本之家~

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8