循环语句的使用

循环

**定义:**让代码重复执行(一条语句可以反复执行)

for循环

语法:

for 变量 in 序列:

​ 循环体

说明:

  • for 、in - 关键字,固定写法。

  • 变量 - 写一个变量名。(可以是已经定义过的,也可以是没有定义过的)

  • 序列 - 容器型数据类型对应的数据,常见序列:字符串、列表、元祖、字典、集合、迭代器、生成器、range。

  • 循环体 - 和for保持一个缩进的一条或者多条语句

执行过程

让变量在序列中取值,依次取出,取完为止,每取一次值执行一次循环体。

for循环循环的次数和序列中元素的个数有关。

1.以字符串作为容器

代码:

for x in '我的天':
    print(x,'hello')
    
'''
执行效果:
我
hello
的
hello
天
hello
'''

执行逻辑

x = '我':print(x,'hello') -> print('我','hello')
x = '的':print(x,'hello') -> print('的','hello')
x = '天':print(x,'hello') -> print('天','hello')

2.以range作为容器的样例

range函数:

**定义:**产生指定范围的数字序列

  1. range(N) - 产生[0,N)的数字序列,其中步长为1

代码:

for x in range(10):
    print(x)
'''
执行效果:
0
1
2
3
4
5
6
7
8
9
'''
  1. range(M,N) - 产生[M,N)的数字序列,其中步长为1
for x in range(4,10):
    print(x)
'''
执行效果:
4
5
6
7
8
9
'''
  1. range(M,N,step) - 产生[M,N)的数字序列,其中步长为step指定的值
for x in range(4,10,2):
    print(x)
'''
执行效果:
4
6
8
'''

案例说明

统计100以内偶数的个数

count = 0
for x in range(0,100,2):
    count+=1
print('100以内偶数的个数:',count)

统计100以内能被3整除的偶数的个数

count = 0
for x in range(0,100,6):
    count+=1
print('100以内能被3整除的偶数个数:',count)

数据1+2+3+…+100的和

sum = 0
for x in range(101):
    sum += x
print('1~100的整数和为:',sum)

计算所有水仙花数的和

sum = 0
for x in range(100,1000):
    if (x % 10) ** 3 + (x % 100 //10) ** 3 + (x // 100) ** 3 == x:
        sum += x
print('水仙花数的和:',sum)

while循环

语法

while 条件语句:

​ 循环体

说明

  • while - 关键字;固定写法
  • 条件语句 - 任何有结果的表达式(只有赋值语句不可以)

  • : - 固定写法

  • 循环体 - 和while保持一个缩进的一条或者多条语句;需要重复执行代码

执行过程:

先判断条件语句是否为True,如果为True就执行循环体,执行完循环体再判断条件是否为True,如果True就再执行循环体

…以此类推,当条件语句结果为False时,跳出循环。

意义

while循环空循环次数的原则:让条件经历指定次数后由True变成False

while和for的选择

  1. for循环:循环次数确定的时候使用
  2. while循环:循环次数不确定的时候使用

循环关键字continue和break

只能在循环体中使用

  1. continue - 结束一次循环/结束当此循环

如果在执行过程中需要了continue,那么当此循环结束,直接进入下一次循环

  1. break - 结束整个循环体

如果在执行过程中需要了break,那么整个循环体都结束

有了break的while循环

while True:

​ 需要重复执行的操作

​ if 循环结束的条件:

​ break

while True:
    num = input('请输入内容:')
    if num == '0':
        break

循环结构中else

语法:

for 变量 in 序列:
    循环体
else
    代码段
    
while 条件语句:
    循环体
else
    代码段

else结构的存在不影响原来循环的执行

当循环自然死亡else后面的代码段会执行,如果循环是因为遇到break而结束的else后面的代码段不执行

for x in range(5,34,5):
    print(x)
    if x % 7 == 0:
        break
else:
    print('没有遇到break了!')
'''
输出结果:
5
10
15
20
25
30
'''    
for x in range(1,34,5):
    print(x)
    if x % 7 == 0:
        break
else:
    print('没有遇到break了!')
    
'''
输出结果:
1
6
11
16
21
'''

作业在此

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值