python的if条件判断,及多重条件判断和嵌套
前面章节的很多实例当中,我们已经应用到了python的if条件判断。它的内容实际上很简单,关键在于判断条件的设计。
python的if条件判断的多种不同形式
我们不废话,直接用一些实例来展示if条件判断的多种不同形式,大家可以打开jupter notebook。
单一的if条件判断示例
In[1] : a = 6
if a>=6: # 能单一地使用if条件判断的就尽量只使用一个if,代码越简单越好,代码行数越少,执行速度往往也越快。
print(a)
6
if...else...示例
“如果怎样,就做什么事,否则就做其他的事”,这是比较常见的if判断语句,也相对完整。
In[2] : a = 6
if a>=8:
print('True')
else:
print('False')
False
if...elif...else示例
“如果这样,就做这样的事,如果那样,就做那样的事,否则就做其他的事”,这是更完整的条件判断,而且可以无限嵌套,可视为多重条件判断。
In[3]: a = 'x1y1z1.com,至简计算'
if type(a)==int:
print('int')
elif type(a) == list:
print('list')
elif type(a) == tuple:
print('tuple')
elif type(a) == dict:
print('dict')
elif type(a) == set:
print('set')
elif type(a)==str:
print('string')
else:
print(a)
string
注意:if...elif...else条件判断也是从上到下的顺序执行,直到条件被满足为止,否则执行else语句。
if...elif...示例
如果不用else的话,程序也是可以执行的。
in[4]: a = 'x1y1z1.com, python全栈'
if '困难' in a: #还记得前面介绍的成员运算符吗
print('False')
elif 'python全栈' in a:
print('True')
True
条件判断的与、或、非示例
前面提到了条件判断中的多重条件判断,现在我们介绍一下同一个条件中的多个条件判断,即多个条件在同一个条件判断中进行布尔(逻辑)的与、或、非等运算,也就是数学上的交集、并集和补集运算:
In[5]: a = 'x1y1z1.com,python,Django,Big Data,Machine Learning'
if 'python' in a and 'Django' in a and 'Big Data' in a and 'Machine Learning' in a:
print('x1y1z1.com是一个可以学习python全栈的有价值的网站')
#用关键词and进行与的运算,数学上的交集运算
In[6]: b = list(range(1,10))
if b[1]==1 or b[8]==10 or b[0]==1: #用关键词or进行布尔的或运算,即数学上的求并集
print('True') #根据列表的索引我们可知,b[1]为2,b[8]为9,b[0]为1
True
if not (b[1]==1 or b[8]==10): #关键词not进行非的运算,即数学上的补集
print('True')
True
if条件判断的嵌套
if条件判断的嵌套在python的编程实战之中经常用到:
条件判断的嵌套示例
In[1]: 至简计算网站 = ['python','Django','Big Data','Machine Learning'] #python3.x之后,支持用中文命名变量,但不建议
if 'python' in 至简计算网站:
if 'Django' in 至简计算网站:
if 'Big Data' in 至简计算网站:
if 'Machine Learning' in 至简计算网站:
print('至简计算网站是一个可以学习python全栈的有价值的网站')
至简计算网站是一个可以学习python全栈的有价值的网站
python的if条件判断就先介绍到这里,下一章节我们将介绍python的循环控制。