Python流程控制
曲折上升 人气:01.if判断
1.1 if语句
if 表达式:
语句1
语句2
……
1.“if”后的条件测试不止支持布尔型,也可以使用数字。
2.如果条件测试的内容是字符串,则只有字符串是空字符串时,条件测试的结果才为“False”。
3.不仅仅是字符串,条件测试中空列表、空元组、空字典也是“False”。
4.当if条件为“None”时,也不会执行if语句中代码。
1.2 else语句
1.当“if”的条件测试为“False”的时候执行“else”后边的语句,“else”是if语句的一个可选项,不一定非要有else语句。但是“else”不能够单独出现,必须跟if后边。
2.while语句也可以和else组合。在while语句条件测试为“False”时执行。
# -*- coding: utf-8 -*- x = 0 if x: print ("x is not zero") else: print ("x is zero")
执行结果如下:
x is zero
1.3 elif语句
1.有时候会需要多个测试条件时,仅“if...else”并不能满足我们的需求,这时,我们可以使用elif语句。
2.elif语句也不能单独出现,必须跟“if”后边。
3.如果有“elif”,则“else”必须跟最后。
# -*- coding: utf-8 -*- x = 59 if x > 90: print ("A") elif x > 80: print ("B") elif x > 60: print ("C") else: print ("D")
执行结果如下:
D
2.循环
2.1 while循环
语法格式:
while循环表达式:
语句1
语句2
......
执行流程如图:
while语句跟“if”语句的表达式一样,只有条件测试为“True”时,才会执行“while”循环体内的语句。
# -*- coding: utf-8 -*- x = 0 while x <= 10: print (x) x += 1
执行结果如下:
0
1
2
3
4
5
6
7
8
9
10
执行结果打印1~10的数字,不能省略“x += 10”,否则变量“x”永远小于10。while语句中的“x<=10”条件永远是“True”,那么“print(x)”会一直执行下去。
2.2 for循环
语法格式:
for 变量 in 序列:
语句1
语句2
.......
执行流程如图:
语法格式中的序列可以是列表,元组等可迭代序列。
# -*- coding: utf-8 -*- for x in (1,2,3,4,5,6,7,8,9): print (x)
执行结果如下:
1
2
3
4
5
6
7
8
9
如果需要多次输出的话我们可以使用range函数。
range函数有两种使用方式:1.给定一个数字。2.给定range函数的开始和结束数字,并且可以定义步长(默认为1)。
# -*- coding: utf-8 -*- for x in range(5): print ("hello") for y in range(1,10): print (y) for z in range(1,10,2): print (z)
执行结果如下:
hello
hello
hello
hello
hello
1
2
3
4
5
6
7
8
9
1
3
5
7
9
2.3 break和continue语句
break语句的作用是可以立即的跳出循环体。后边的语句都不会执行。
continue语句的作用是可以跳过当前循环体执行之后的循环。
# -*- coding: utf-8 -*- for x in range(5): if x > 3: break print (x) for y in range(5): if y == 3: continue print (y)
执行结果如下:
0
1
2
3
0
1
2
4
可以看到,当x>3时,break成退出了循环体。
当y==3时,continue被执行,跳过了后边的prin语句。
3.其他
当我们没有想好程序要做什么时,可以使用“pass”(占位语句)来是保持程序结构的完整性。
# -*- coding: utf-8 -*- for x in range(5): if x > 3: pass else: print (x)
执行结果如下:
0
1
2
3
加载全部内容