python语言学习——循环结构

1 遍历结构——for语句

1.1 for语句的基本结构

for <循环变量> in <遍历结构>:
	<语句块>

1.2 常用使用方法

# 循环N次
for i in range(N):
	<语句块1>
# 遍历文件fi的每一行
for line in fi:
	<语句块2>
# 遍历字符串s
for c in s:
	<语句块3>
# 遍历列表ls
for item in ls:
	<语句块4>	

1.3 拓展模式

for <循环变量> in <遍历结构>:
	<语句块1>
else:
	<语句块2>	

1.3.例子

for s in 'dream':
    print("梦"+s)
else:
    print("梦开始")
----------------------------
# 输出结果
梦d
梦r
梦e
梦a
梦m
梦开始    

由此可见,在这种拓展模式中,首先执行for语句,等for语句全部执行完毕后,才执行else语句。

2 无限循环——while语句

2.1 while语句的基本结构

while <条件句><语句块>

2.2 拓展模式

while <条件句>:
	<语句块1>
else:
	<语句块2>	

2.2.例子

s,count = 'dream',0
while count < len(s):
    print('梦'+ s[count])
    count += 1
else:
    print("梦开始")
-------------------------------
#输出结果
梦d
梦r
梦e
梦a
梦m
梦开始

由此可见,如果通过while循环进行一个计数循环,需要先对计数器进行初始化处理,然后依次累加,第三行中的s[count]意为对字符串s进行取字,当count = 0时,就取’d’,以此类推,如果没有[count],程序可以正常运行,但是每一次在‘梦’之后的就是’dream’整个单词。但在for循环中,循环变量逐一取自遍历结构,因此对于计数没有要求。

3 循环保留字——break和continue

3.1 break的运用

break用来跳出最内层的for和while循环,并从循环后的代码继续执行。

3.1.例子

for s in 'dream':
    for i in range(5):
        print(s,end="")
        if s == 'e':
            break
------------------------------
#输出结果
dddddrrrrreaaaaammmmm        

如果没有if后的语句,这个循环的意思就是,现在s字符串中遍历,我们知道遍历的第一个字母是"d",紧接着进入第二个for语句中,即对这个字母输出循环5次,到此,第二个循环先结束,又跳到第一个循环,以此类推,直到第一个循环和第二个循环都结束。
加上if后的语句,是指当s遍历到字母e时,第二个循环结束,但第一个循环照样进行,也就是说,当遍历到字母e时,只print出来一次,就被break给结束了。但,break是用来跳出最内层的循环,对于外层循环没有影响,故循环接着遍历到字母a,又开始正常的第二次循环。

3.2 continue语句的运用

continue用来结束当前当次循环,直接进行到下一次循环中。对于while循环,继续求解循环条件,对于for循环,程序流程接着遍历循环列表。

3.2.例子

for s in 'dream':
    if s =='e':
        continue
    print(s,end="")        
 -------------------------------
 #输出结果
 dram    

4 break与continue的区别

break语句是对循环的结束,不再判断执行循环的条件是否成立,而continue语句只结束本次循环,不终止整个循环的进行

5 break与continue在for和while语句拓展模式中的运用

5.1break对else的影响

5.1.例子

for s in 'dream':
    if s =='e':
        break
    print(s,end="")        
else:
    print("梦开始")
--------------------------
#输出结果
dr    

可见,break在s遍历到字母e时,直接将整个循环终止,else语句也停止运行。

for s in 'dream':
    for i in range(5):
        print(s,end="")
        if s == 'e':
            break
else:
    print("梦开始")
----------------------------
#输出结果
dddddrrrrreaaaaammmmm梦开始

此处break对else没有影响,更加说明break语句是对最内循环的一次终止

5.2 continue语句对else没有影响

5.2.例子

for s in 'dream':
    if s =='e':
        continue
    print(s,end="")        
else:
    print("梦开始")
-----------------------------
#输出结果
dram梦开始

6 小结

分支与循环相辅相成,同时也构成了python语言的整个框架和基础。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值