分支语句的作用是在某些条件控制下有选择的执行实现一定功能语句块。if 分支语句则是当if后的条件满足时,if 下的语句块被执行,语法格式如下所示:
if <condition>: statements
让我们看看代码吧。
>>> sex = 'male' >>> if sex == 'male': print 'Man!'#此处有两次回车键 Man! >>> if sex == 'female': print 'Woman'#此处有两次回车键 >>>
if语句下的语句块是在<condition>条件满足时执行,else 语句下的语句块则是在<condition>条件不满足的情况下执行,使用if_else 语句需要注意的是if的<condition>判定条件后有冒号,else 语句后无<condition>判定表达式,但有冒号。if 和else下的语句块不用左右花括号。
if <condition>: statementselse: statements
举个例子来说明一下if_else的使用。
sex = raw_input("plz input your sex: ") if sex == 'male' or sex == 'm': print 'Man!' else: print 'Woman!'
程序运行结果如下:
plz input your sex: female Woman
做个小练习,输入数学成绩(整形),0~60打印“No Pass!”,60~70打印“Just Pass!”,
70~80 打印“Good”,70~80打印“Wonderful!”,80~90打印“Excellent!”,90~100打印“Best!”,请用if_else嵌套来完成。
#coding:utf-8 x = input("plz input math record: ") if x >= 60: if x >= 70: if x >= 80: if x >= 90: print "Best!" else: print "Excellent!" else: print "Good!" else: print "Just Pass!" else: print "No Pass!"
程序运行结果如下
>>> ========= RESTART ========= plz input math record: 27No Pass! >>> ========= RESTART ========= plz input math record: 67Just Pass! >>> ========= RESTART ========= plz input math record: 77Good! >>> ========= RESTART ========= plz input math record: 80Excellent! >>> ========= RESTART ========= plz input math record: 98Best! >>>
上边的程序如果写不好,很有可能无法完成对成绩的分类打印,诸如用if_else 嵌套完成的程序可以用if_elif_elif_.....elif_else结构来完成,其语法结构如下所示:
if <condition1>: statements_1 elif <condition2>: statements_2 elif <condition3>: statements_3 ... ... ... elif <conditionN>: statements_n else: statements_else
这种结构称之为多分支结构,从上if 至下elif 逐一检查判定条件表达式上
<conditionX>,看那个条件满足就执行其下的语句块上 statements_X,所有条件均不满足才执行else 下的语句块statements_else。 整个结构只有一个语句块被执行。由此上一小节的分类打印成绩的程序可以改成下面这个样子了。
if x >= 90: print "Best!" elif x >= 80: print "Excellent!" elif x >= 70: print "Good!" elif x >= 60: print "Just Pass!" else: print "No Pass!"
小练习:写一个完备的判断性别的程序。(键入 ’male’,’Male’,’m’,’M’,’man’,’Man’ 均代表男性)