对于三目运算符(ternary operator),python可以用conditional expressions来替代
如对于x<5?1:0可以用下面的方式来实现
1
|
1if x< 5else 0 |
注: conditional expressions是在python 2.5之前引入的,所以以上代码仅适用于2.5以及之后的版本
对于2.5之前的版本,可以用下面这种形式
1
|
X< 5and1or 0 |
对于switch,我们完全可以用dictionary来实现,看下面的例子
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
>>> 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全部内容了,希望大家多多支持服务器之家~