今天总结一下Python中的所有的判断语句
1. 判断语句
1.1. if语句
age = 18 if age > 18: print('你已经18岁了') else: print('小于18岁')
if
系列的语句可以只含有if
语句,而else
语句是可选的,针对多个判断条件可以使用if
-elif
-else
age = 18 if age > 18: print('你已经18岁了') elif age > 10: print('小于18岁,大于10岁') else: print('小于10岁')
1.2. 三元运算符
在C语言中有三元运算符?:
,在python中也有类似功能的语法
true if 判断条件 else false
msg = '你已经18岁了' if age > 18 else '小于18岁'
1.3. 'switch'语句
熟悉python的同学应该知道,在python里面并没有switch语句,但是我们可以利用list
、tuple
、dict
这些自带的数据结构配合index
或者是key
来实现switch语句。
我们先看下面这个使用if-elif-else
的例子
age = 18 if age == 10: print('10岁了') elif age == 12: print('12岁了') elif age == 14: print('14岁了') else: print('不是10,12,14岁')
使用一个dict
可以改造上面这个例子
age = 18 switch_dict = { 10:'10岁了', 12:'12岁了', 14:'14岁了' } print(switch_dict.get(age, '不是10,12,14岁')) # '不是10,12,14岁'
通过上面这个改造的例子,可以发现,通过dict
来实现类似switch
语句的功能,同时也避免了出现多个if语句的情况。除此之外,在判断条件较少时,还可以直接使用list
或者tuple
来进行实现判断,比如下面的例子
def do_when_true(): print('true') def do_when_false(): print('false') cond = 1 # True cond_tuple = (do_when_false,do_when_true) cond_tuple[cond] # 上面两行代码等价于下面的代码 if cond: do_when_true() else: do_when_false()
通过index
索引来进行自动选择不同的函数,从而实现判断语句。