当前位置:   article > 正文

Python 循环语句之 for 和 while 的应用_python for while

python for while

目录

1、for 循环

2、while 循环

3、循环嵌套


        编程时,我们经常需要用到循环语句,以实现规律性的重复操作。通常而言,循环语句由循环体和循环终止条件两部分组成,其中被重复执行的语句称为循环体,能否继续重复,则取决于循环的终止条件。

        Python 具有 for 循环和 while 循环两种循环语句,二者本质上并无区别,但在实际应用上,侧重不同。while 循环适用于未知循环次数的循环,for 循环则适用于已知循环次数的循环 。

循环语句描述
for 循环重复执行语句
while 循环在给定的判断条件为 True 时执行循环体,否则退出循环体。
循环嵌套一个循环体里面嵌入另一个循环

1、for 循环

        Python for 循环可以遍历任何可迭代对象,如列表或字符串。其语法格式为:

  1. for <variable> in <sequence>:
  2. <statements>
  3. else:
  4. <statements>

流程图:

示例:

        0,1,2,3,4,5可组成多少个无重复数字的三位数?

  1. sum = 0
  2. for i in (0,1,2,3,4,5):
  3. for j in (0,1,2,3,4,5):
  4. for k in (0,1,2,3,4,5):
  5. if i != j and j != k and i != k and i != 0:
  6. sum += 1
  7. print('{}个'.format(sum))

        答案为100个。

        如果需要遍历数字序列,可以配合使用内置函数 range(),其语法为:

  1. range(stop)
  2. range(start, stop[, step])
  • start:从 start 开始,默认从 0 开始。
  • stop:到 stop 结束,但不包括 stop。
  • step:步长,默认为1。

        注意:Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。

 

示例:

        九九乘法表

  1. for i in range(1,10):
  2. for j in range(1,i+1):
  3. print('{}x{}={}\t'.format(j, i, i*j), end='')
  4. print()

结果:

  1. 1x1=1
  2. 1x2=2 2x2=4
  3. 1x3=3 2x3=6 3x3=9
  4. 1x4=4 2x4=8 3x4=12 4x4=16
  5. 1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
  6. 1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
  7. 1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
  8. 1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
  9. 1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
  10. >>>

 

        在 python 中,for … else 表示 else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

 

示例:

  1. for i in range(3):
  2. user = input('请输入用户名:')
  3. passwd = input('请输入密码:')
  4. if user=='***' and passwd == '***': #***为设定的用户名及密码
  5. print('登录成功')
  6. break
  7. else:
  8. print('输入错误,请重新输入')
  9. else:
  10. print('错误次数过多,登录失败')

2、while循环

        Python while 循环用于在某种条件下,循环执行指定语句,以处理需要重复处理的任务。其语法格式为:

  1. while condition: #判断条件
  2. statements… #执行语句

        执行语句可以为单个语句或语句块;判断条件可以为任何表达式,任何非零、非空(null)的值均为true。当判断条件为假(False)时,循环结束。

        通过设置条件表达式永远为 true 可实现无限循环,使用 Ctrl+C 可退出当前的无限循环。无限循环在服务器上客户端的实时请求非常有用。

流程图:

        下面的动画可以直观地显示 while 循环的流程

示例:

        求1-100数字之和

  1. n=100
  2. sum = 0
  3. num = 1
  4. while num <= n:
  5. sum += num
  6. num += 1
  7. print('1到{}之和为:{}'.format(n,sum))

结果

  1. 1100之和为:5050
  2. >>>

3、循环嵌套

        所谓循环嵌套(Nest),就是在一个循环体语句中又包含另一个循环语句,例如 for 中有 for,while 中有 while,甚至 while 中有 for 或者 for 中有 while。多层循环嵌套时,位于外层的循环结构常简称为外循环,位于内层的循环结构常简称为内循环。

执行流程:

  1. 外层循环条件为 True 时,执行外层循环体;
  2. 外层循环体中的内层循环条件为 True 时执行内循环,为 False时跳至外循环;
  3. 若此时外层循环条件仍为 True,则返回第1步,继续执行外循环体,直至外层循环条件为 False;
  4. 当内、外层循环条件均为 False时,整个嵌套循环执行完毕。

        嵌套层次的应用,视乎场景需要。嵌套循环执行的总次数为外、内循环执行次数的乘积。

实例:

  1. for i in range(5) :
  2. j = 0
  3. while j < 3 :
  4. print('{}→{}'.format(i,j))
  5. j += 1

结果:

  1. 00
  2. 01
  3. 02
  4. 10
  5. 11
  6. 12
  7. 20
  8. 21
  9. 22
  10. 30
  11. 31
  12. 32
  13. 40
  14. 41
  15. 42
  16. >>>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/693374
推荐阅读
相关标签
  

闽ICP备14008679号