循环
Python 中的循环语句有for和while两种。需要注意的是 python 中没有do...while循环。
while循环
while 循环是前置真值条件循环,也就是说会先对判断条件进行求值,如果返回真值,则开始执行循环体内容;如果返回假值,则退出循环。while 的语句格式为:
while 判断条件:
语句块
例如以下示例可以用于求和:
sum = 0
count = 1
while count <= 100:
sum = sum + count
count += 1
如果 while 的条件表达式值永远为True,则 while 就变成了一个无限循环,这在运行常驻服务以及 GUI 程序时十分有用。
while 语句可以附加一个 else 语句块,用以在判断条件为False时执行,其语句格式为:
while 判断条件:
语句块
else:
语句块
如果 while 中只有一条语句,则可以将其与 while 写在同一行中,但是 while 语句末尾的冒号不可省略。
for 语句
与其他语言中的 for 语句不同,Python 中的 for 语句用于遍历任意序列,如列表或者字符串。其语句格式为:
for 循环变量 in 序列:
语句块
else:
语句块
for 语句与 while 语句一样,也可以附加一个 else 语句块,这个 else 语句块是在序列为空,没有执行循环时执行的。
如果需要像其他语言一样循环遍历一个数字序列,可以使用range()定义一个数字序列,例如:
for i in range(5, 10):
print(i)
range(n, m)会生成一个\( [n,m) \)的区间,如果加入第三个参数,即range(n, m, s)则可以定义序列增长的步进。
对于序列,可以使用函数enumerate(seq)来同时获取序列的索引和值,例如:
for index, value in enumerate(seq):
pass
循环退出
break和continue语句提供了从循环中退出的功能,其中break会完全退出当前循环体,并且循环体附加的 else 语句块也不会执行。continue语句则是用于跳过循环块中剩余的语句并开始下一次循环的执行。