python基础-循环语句(5)

一、循环语句介绍

  • 一般情况下,需要多次重复执行的代码,都可以用循环的方式来完成
  • 循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环

 

二、常见的循环形式

  1. while循环
  2. for循环

 

三、while循环

while 条件:
    满足条件时执行的代码1
    满足条件时执行的代码2
    ...(省略)...

举例如下:

i = 0
while i<5:
    print("i现在等于%d"%i)
    i+=1

运行结果为:

i现在等于0
i现在等于1
i现在等于2
i现在等于3
i现在等于4

while循环的嵌套

类似if的嵌套,while嵌套就是:while里面还有while

while 条件1:
    满足1时,执行的代码1
    满足1时,执行的代码2
    ...(省略)...
    while 条件2:
        满足2时,执行的代码1
        满足2时,执行的代码2            

这也就是所谓的双重循环,典型的案例:打印九九乘法表

i=1
while i<=9:
    j=1
    while i>=j:
        print("%d*%d=%-2d"%(i,j,i*j),end=" ")
        j+=1
    print("\n")
    i+=1

运行结果如下:

1*1=1  

2*1=2  2*2=4  

3*1=3  3*2=6  3*3=9  

4*1=4  4*2=8  4*3=12 4*4=16 

5*1=5  5*2=10 5*3=15 5*4=20 5*5=25 

6*1=6  6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 

7*1=7  7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 

8*1=8  8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 

9*1=9  9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

解释说明

  1. %-2d意思是占2个位置的整形
  2. 因为python中的print默认end是”\n”,所以默认时换行的,这里我们只需要修改end属性就可以了设置结尾不换行了

 

四、for循环

在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。

for循环的格式

for 临时变量 in 集合容器:
    满足循环执行的代码
else:
    不满足循环时执行的代码

其中:else可写可不写,根据需要自行决定

name = "Se7eN_HOU"
for x in name:
    print(x)

运行结果为:’S’,’e’,’7′,’e’,’N’,’_’,’H’,’O’,’U’ 

for循环嵌套

for循环和while循环一样也可以嵌套,还以打印九九乘法表为例演示

for i in range(1,10):
    for j in range(1,10):
        print("%d*%d=%-2d"%(i,j,i*j),end=" ")
        if i==j:
            break
    print("\n")

运行效果为:

1*1=1  

2*1=2  2*2=4  

3*1=3  3*2=6  3*3=9  

4*1=4  4*2=8  4*3=12 4*4=16 

5*1=5  5*2=10 5*3=15 5*4=20 5*5=25 

6*1=6  6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 

7*1=7  7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 

8*1=8  8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 

9*1=9  9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

说明:

  1. 用到break这个知识点,讲座下一个知识点马上给大家讲解
  2. range()一个随机函数、在()里面写上随机数的范围

 

五、continue和break

使用场景,通常在循环中当做中断循环使用,例如我本来想做10次循环,但是到第5次的时候我就不想循环了,或者第5次不想循环了,后面4次继续循环就需要用到break和continue。

continue:跳出当前本次循环,后面的循环继续做

i = 1
while i<=10:
    if i==5:
        i+=1
        continue
    print(i)
    i+=1

运行结果为:1,2,3,4,6,7,8,9,10

当i等于5的时候进入if语句,只做了自加1,continue之后的就print没有执行,但是i等于6,7,8,9,10次的循环继续执行了,所以continue只是结束当前这一次循环,后面的循环继续执行

break:结束当前所有的循环,不管后面还有几次都不执行了

i = 1
while i<=10:
    if i==5:
        i+=1
        break
    print(i)
    i+=1

运行结果为:1,2,3,4

当i等于5的时候,进入if语句,执行了i+=1,之后执行break代码,直接退出循环,所以后面的,6,7,8,9,10次都不会执行了

 

posted @ 2019-03-15 01:55  Se7eN_HOU  阅读(4758)  评论(0编辑  收藏  举报