对于三目运算符(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全部内容了,希望大家多多支持服务器之家~