



条件判断是第一种流程控制,能够在程序当中定义分叉路,所以也称为分支结构。其使用方法是,当条件成立时,程序执行if区块,否则执行else区块。if后面的条件会被转成布尔值,记得不要和True及False比较,进行数值类型比较时需要明确的比值。
1 if条件一: 2 符合条件一需执行的区块 3 elif 条件二: 4 符合条件二需执行的区块 5 else: 6 不符合任何条件需执行的区块
while循环是一种重复结构。其使用方法是,当适当条件成立时,程序会持续运行while区块。while区块要设有将条件达成不成立的机制,否则程序会出现无穷循环的状况。
1 while条件: 2 当条件成立时需执行的区块
for循环是另外一种重复的结构,是使用一个迭代的做法,将某一个容器元素从头到尾遍历一次。
1 for i in [...]: 2 条件成立时需执行的区块
Python有3个常搭配for循环的内建函数range、zip和enumerate,可以有效地使程序更简洁。
range可以产生一个长度为n的序列,如range(3)会输出0、1、2。
1 for i in range(3): 2 print(i) 3 # 0 4 # 1 5 # 2
zip是压缩的意思,能够将多个列表依序压缩成一个列表。
1 for i, j in zip([a, b, c], [1, 2, 3]): 2 print(i, j) 3 # a, 1 4 # b, 2 5 # c, 3
enumerate叫作枚举,可以在循环时同时指定对应的索引。
1 for i,j in enumerate([a, b, c]): 2 print(i, j) 3 # 0, a 4 # 1, b 5 # 2, c
循环中断break和continue是两个用于循环的附加功能。break可以强制终止循环,continue可以跳过这个回合继续执行循环。
解析式(Comprehensions)是Python的一种特殊写法,参考了自函数式程序语言(Functional Programming),其实就是将if或for写成一行,让程序更简洁。
1 # if comprehensions 2 a = ... if condition else ... 3 4 # for comprehensions 5 a = [i for i in [...]] # list
解析式也可以拼接比较复杂的版本,用法如下。