程序的控制循环(while循环)

 无限循环:

由条件控制的循环运行方式。

语法格式如下:

while <条件>:

<语句块>

以上格式中的while关键字和冒号分别标识while语句的起始和结束,循环条件与while关键字以空格分隔,语句块通过缩进与while语句产生关联。

 执行while语句时,若循环条件的值为True,则执行循环中的语句块,执行完语句块后再次判断循环条件,如此往复,直至循环条件的值为false时循环终止,执行循环之后的代码。while语句的执行流程如图如下: 

根据这个条件来进行循环,如果这个条件成立,那么下面的语句就会被执行,执行之后再次判断条件,如果条件还是成立,她就会继续再执行下面的语句,再回来判断循环。

反复执行语句块,直到条件不满足时结束。

代码示例一如下所示:

a=3
while a>0:
    a=a-1
    print(a)

运行界面如下: 

代码示例二如下所示:

i=1
result=0
while i<=10:
    result+=i  #result=result+i
    i+=1       #i=i+1
print(result)

以上示例中变量i是循环因子,其初始值为1,会随循环次数增加;变量result是所求的和,其初始值为0。首次执行while循环时,因为i<=10的值为True,所以会执行循环中的代码段,使result的值由0变为0+1,i的值由1变为2;再次判断i<=10,如此往复,直至i的值变为11时,i<=10的值变为False,循环结束,执行循环之后的打印语句,输出result的值。

运行界面如下: 

循环控制保留字:

break和continue

break跳出并结束当前整个循环,执行循环后的语句

continue结束当次循环继续执行后续次数循环。

break和continue可以与for和while循环搭配使用

continue的含义是指在当次循环体执行的时候,如果遇到了continue保留字,那么当代循环就结束去做下一次循环。

break的含义是指如果一旦遇到了这个保留字整个循环结束。

break示例代码如下:

for word in "Python":
    if word=='o':
        break
    print(word,end="  ")

遍历这个字符串python,如果这个字符串中出现了o,则停止打印字符串,跳出整个循环,即结束了循环。

运行界面如下: 

continue示例代码如下:

for word in "Python":
    if word=='o':
        continue
    print(word,end="  ")

遍历这个字符串,如果这个字符串中出现了o,不打印这个o,否则打印其他的所有字符出来。

运行界面如下: 

循环嵌套:

循环之间可以互相嵌套,进而实现更为复杂的逻辑。循环嵌套按照不同的循环语句可以分为while循环嵌套和for循环嵌套。

while循环嵌套:

while循环嵌套是指while语句中嵌套while或for语句。

格式一如下所示:

while 循环条件1:  #外层循环

代码段1

   while 循环条件2:  #内层循环

代码段2

执行while循环嵌套时,若外层循环的循环条件1的值为True,则执行代码段1,并对内层循环的循环条件2进行判断:若循环条件2的值为True则执行代码段2,若其值为False则结束内层循环。内层循环执行完毕后继续判断外层循环的循环条件1,如此往复,直至循环条件1的值为False时结束外层循环。

代码示例如下:

i=1
while  i<6:
    j=0
    while j<i:
        print("*",end="")
        j+=1
    print()
    i+=1

以上示例的变量i代表图形的行数,变量j代表每行“*”的数量。需要注意的是,以上程序打印的“*”只需要换行一次,因此代码在内层循环中修改了print()函数的结束符(通过代码 print("*",end="")将end参数默认的结束符'\n'替换为空格符。

运行代码如下: 

格式二如下:

while 循环条件1:  #外层循环

代码段1

   for  循环变量 in  遍历结构  #内层循环

代码段2

代码示例如下:

i=1
while  i<6:
   j=0
   for j in '012345':
    print("*",end="")
    print(j)
  

首先对于while循环进行判断条件,i的初始值为1,条件为True,进行for循环,将字符串‘012345’里面的每一个字符进行遍历循环,逐一输出,同时输出j.

运行界面如下:

for循环嵌套:

 for循环嵌套是指for语句中嵌套while或for语句。

格式一如下所示:

for 循环变量 in 遍历结构:  #外层循环

          代码段1

       for 循环变量 in 遍历结构:#内层循环

         代码段2

执行for循环嵌套时,程序首先会访问外层循环中循环变量的首个元素、执行代码段1、访问内层循环中循环变量的首个元素、执行代码段2,然后访问内层循环的下一个元素、执行代码段2,如此往复,直至访问完内层循环的循环变量后结束内层循环,转而继续访问外层循环中的下一个元素,访问完外层循环的循环变量后结束外层循环。因此,外层循环每执行一次,都会执行一轮内层循环。

代码示例如下:

for i in range(1,6):
    for j in range(i):
        print("*",end='')
    print()

运行界面: 

格式二如下:

for  循环变量 in  遍历结构  #外层循环

代码段1

while 循环条件1:  #外层循环

代码段2

代码如下所示:

for i in range(5):
    j=1
    while i>j:
        print("*",end='')
        j+=1
    print()
    i+=1

首先执行外层循环for循环,range(5)即为从0开始,然后执行内层循环,i=0,进行判断后,i的值不大于j的值,即条件为false,直接输出即可。然后i进行加1操作,i=1,同时还是false,然后输出,循环往复,直到全部输出即可。

运行界面如下: 

在循环嵌套中,如果使用了break语句,程序在执行到break语句时会结束本层循环。即break仅跳出当前最内侧循环。

代码示例如下:

S='PYTHON'
while S!="":
    for c in S:
        if c=='T':
            break
        print(c,end='')
    S=S[:-1]

运行界面如下:

 循环的高级用法:

循环的扩展

循环与else

格式如下:

for <循环变量> in <遍历循环>:

<语句块1>

else:

<语句块2>

当循环没有被break语句退出时,执行else语句块。

else语句块作为正常完成循环的奖励。

这是else的用法与异常处理中else用法相似。

代码示例如下:

for c in "PYTHON":
    if c=='T':
        continue
    print(c,end="")
else:
    print("正常退出")

运行界面如下: 

否则代码示例如下:

for c in "PYTHON":
    if c=='T':
        break
    print(c,end="")
else:
    print("正常退出")

运行界面如下: 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一直再追梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值