前言:
本篇文章是《Python之旅》系列的第四篇,在上一篇文章中主要学习了:Python的算术操作符、比较操作符、赋值操作符、成员操作符、身份操作符以及运算符的优先级。本篇文章主要学习的知识点有:Python 的条件语句。
Python的条件语句是通过一条或多条语句的执行结果(返回值:True或者False)来决定执行具体的代码块,类似于Java中常见的 if else语句,这种条件语句的设置在Python中沿用了下来,当然这也是计算机科学严密逻辑设计的具体表现形式,满足设定逻辑即执行,不满足就不执行。言归正传,Python的if 语句判断条件可以使用 >(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)等比较运算符来表示其关系,
a = 11
if a > 10:
print "a大于10"
else:
print "a小于10"
Python条件语句的多重判断,多重判断简单点理解就是 if else 的升级版,比if-else 在逻辑上更加健壮。就是if - else if - else if - else这种写法,但是Python的多重判断条件语句没有if else这种写法,取而代之的是使用 elif 关键字,代码如下:
if a > 2:
print "a大于2"
elif a < 9:
print "a小于9"
elif a > 7:
print "a大于7"
elif a > 9:
print "a大于9"
elif a > 11:
print "a大于11"
else:
print "a..."
Python条件语句的多重判断,多重判断简单点理解就是 if else 的升级版,比if-else 在逻辑上更加健壮。就是if - else if - else if - else这种写法,但是Python条件语句没有else if 这种写法,取而代之的是使用elif关键字,代码如下:
由于 python 并不支持 类似java中的switch 语句,所以多个条件判断,只能用 elif 来实现。如果逻辑判断条件需要多个条件同时判断,在Python中可以使用 or (逻辑或)或者and (逻辑与)。
- or (逻辑或):表示两个条件有一个成立(只需要一个为true)时,整个判断条件成功;
- and(逻辑与):表示只有两个条件同时成立(同时为true)的情况下,整个判断条件才成功。
参考代码如下:
data = 5
if data >= 0 and data <= 10: # 判断值是否在0-10之间
print '数值在0-10之间'
else:
print "不在0-10之间"
data = 10
if data < 20 or data > 5: # 判断值是否在小于20或大于5
print '数值小于20或数值大于5'
else:
print '数值不在范围之内'
data = 8
# 判断值是否在0~5或者10~15之间
if (data >= 0 and data <= 5) or (data >= 10 and data <= 15):
print '数值在0~5或者10~15之间'
else:
print '数值不在范围之内'
打印结果如下:
数值在0-10之间
数值小于20或数值大于5
数值不在范围之内
条件语句的优先级
Python的条件语句也是有优先级的,注意:当if有多个判断条件时,可以使用括号来区分判断的先后顺序。括号中的判断首先会优先执行;此外,>(大于)、<(小于)等判断符号的优先级会高于and 和 or 。
解决Python复合布尔表达式中的一些问题
咋一看程序运行正常,如果把 这里的and换成or程序就会报错:
解决办法就是可以把每一个判断语句单独拿出来,做完判断之后在进行逻辑操作。或者对这种特殊的除数不能为0做判断然后进行接下来的操作(类似于 Java中的Object不等于null)
文章用到的源码
总结:
本篇文章主要学习了:Python 的条件语句以及多重判断
如果这篇文章对您有开发or学习上的些许帮助,希望各位看官留下宝贵的star,谢谢。
Ps:著作权归作者所有,转载请注明作者, 商业转载请联系作者获得授权,非商业转载请注明出处(开头或结尾请添加转载出处,添加原文url地址),文章请勿滥用,也希望大家尊重笔者的劳动成果