目录
循环就是指在满足某个条件或者是某组条件时重复执行某操作
while 循环
while 语法:
while 条件:
满足条件时执行...
满足条件时执行...
...
示例:
index = 0
while index <= 100:
print('hello')
# 一般都会写一个自加或自减防止条件一直满足,而进入死循环
index += 1
while 循环嵌套
while 跟着 if 一样都可以嵌套,来看看语法结构吧!
while 条件1:
满足条件 1 是执行...
while 条件2:
满足条件 2 是执行...
满足条件 2 是执行...
示例:
# 打印九九乘法表
i = 1
while i <= 9:
j = 1
while j <= i:
print(f'{j} * {i} = {i*j}', end=' ')
j += 1
print('\n')
i += 1
for 循环
比 while 更简单更强大的循环语句
语法:
# 把遍历对象逐个赋值给赋值目标,然后对赋值目标进行操作
# 这里的遍历对象可以是字符串也可以是列表
for 赋值目标 in 赋值对象:
对赋值目标操作
示例:
range 函数
for 经常与 range 函配合使用,我们先来看看 range 函数的语法与用法
range(start, stop, [,step])
- start: 计数从 start 开始, 默认是从 0 开始, 例如:range(5) 等价于 range(0,5)
- stop: 计数从 stop 结束, 但不包括 stop, 例如:range(5) 是 [1,2,3,4]
- step: 步长 默认为 1, 例如:range(0,5) 等价于 range(0,5,1)
简单使用:
for 循环嵌套
语法结构:
for 赋值目标 1 in 赋值对象:
对赋值目标 1 操作
for 赋值目标 2 in 赋值对象:
对赋值目标 2 操作
示例:
break 语句
break 语句用来终止循环语句,即循环条件没有 False 条件或者序列还没被完全递归完,也会停止执行循环语句,用于 for / while 循环。
语法:
break
示例:
for i in range(9):
print(i)
# 判断如果 i 等于 5 我就退出
if i == 5:
break
break 循环
简单说就是 break 用于那个循环内就退出那个循环
continue 语句
continue 语句用来告诉 Python 跳过当前循环的剩余语句,然后继续进行下一轮循环,用于 while / for 循环,与 break 的区别是 break 是退出循环,而 continue 只是跳过当前循环。
语法:
continue
示例:
else 子句
循环中的 else子句 是其他语言没有的,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样
语法:
for 赋值目标 in 赋值对象:
对赋值目标操作
else:
循环正常结束时,所执行的
示例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 此代码 copy 至菜鸟教程
for num in range(10,20): # 迭代 10 到 20 之间的数字
for i in range(2,num): # 根据因子迭代
if num%i == 0: # 确定第一个因子
j=num/i # 计算第二个因子
print '%d 等于 %d * %d' % (num,i,j)
break # 跳出当前循环
else: # 循环的 else 部分
print num, '是一个质数'
while vs for
你可能会有一个疑惑,什么时候使用 while 循环 什么时候使用 for 循环,这取决于你如果你需要无限次循环直到找到你需要的数据才退出的话就使用 while,如果你只需要遍历已知的集合,列表,元祖等使用 for 即可。
执行速度的对比:
while
for
可以看出来,for 的执行效率比 while 高得多这是因为 range 函数是使用 c 语言写的,那我们的 解释器也是 c 写的。