一首歌时间吃透 Python 循环

目录

while 循环

while 循环嵌套

for 循环

range 函数

for 循环嵌套

break 语句

continue 语句

else 子句

while vs for 


 循环就是指在满足某个条件或者是某组条件时重复执行某操作

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 写的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值