37.for_in循环
for-in循环
in表达从(字符串、序列等)中依次取值,又称为遍历
for-in遍历的对象必须是可迭代对象
for-in的语法结构
for 自定义的变量 in可迭代对象:
循环体
for-in的执行图
循环体内不需要访问自定义变量,可以将自定义变量替代为下划线
#可迭代(三种方式)
for item in 'Python': #第一次取出来的是P,将P赋值值item,将item的值输出
print(item)
#range() 产生一个整数序列,--->也是一个迭代对象
for i in range(10): #循环9次
print(i)
#如果在循环体中不需要使用到自定义变量,可将自定义变量写为"_"
for _ in range(5): #表示(0 1 2 3 4)从0开始循环五次
print('人生苦短,我学python')
#使用for循环,计算1到100之间的偶数和
sum=0 #用于存储偶数和
for item in range(1,101): #从1遍历到100不包括101 代表循环100次
if item%2==0: #如果除2取余数等于0 说明是偶数
sum+=item #判断条件满足,偶数累加
print('1到100之间的偶数和为:',sum)
#结果
P
y
t
h
o
n
0
1
2
3
4
5
6
7
8
9
人生苦短,我学python
人生苦短,我学python
人生苦短,我学python
人生苦短,我学python
人生苦短,我学python
1到100之间的偶数和为: 2550
38.for_in练习题_100到999之间的水仙花数
""输出100到999之间的水仙花数
举例:153=3*3*3+5*5*5+1*1*1"""
for item in range(100,1000): #遍历100到999之间的水仙花数
ge=item%10 #个位
shi=item//10%10 #十位
bai=item//100 #百位
# print(bai,shi,ge)
#判断
if ge**3+shi**3+bai**3==item:
print(item)
#结果
153
370
371
407
39.流程控制语句break
break语句
用于结束循环结构,通常与分支结构if一起使用
#使用for循环
"""从键盘录入密码,最多录入3次,如果正确就结束循环"""
for item in range(3):
pwd=input('请输入密码:')
if pwd=='8888':
break
else:
print('密码不正确')
#结果
请输入密码:1234
密码不正确
请输入密码:5896
密码不正确
请输入密码:8888
# 使用while循环
"""从键盘录入密码,最多录入3次,如果正确就结束循环"""
a=0
while a<3:
"""条件执行体(循环体)"""
pwd=input('请输入密码:')
if pwd=='8888':
print('密码正确')
break
else:
print('密码不正确')
"""改变变量"""
a+=1
#结果
请输入密码:5554
密码不正确
请输入密码:1234
密码不正确
请输入密码:8888
密码正确
40.流程控制语句continue
continue语句
用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用
"""要求输出1到50之间所有5的倍数,5,10,15,20,25·····
5的倍数的共同点: 和5的余数为0的数都是5的倍数
声明样的数不是5的倍数,1,2,3,4,5,6,7,8,9····与5的余数不为0的数都不是5的倍数
要求使用continue"""
for item in range(1,51):
if item%5==0:
print(item)
print('-----使用continue----')
for item in range(1,51):
if item%5!=0:
continue
print(item)
#结果
20
25
30
35
40
45
50
41.else语句
与else语句配合使用的三种情况
else的搭配:
if....else....---->if条件不成立时执行else
while...else...--->没有碰到break时执行else
for....else.....--->没有碰到break时执行else
#使用for循环
for item in range(3): #执行三次
pwd=input('请输入密码:')
if pwd=='8888':
print('密码正确')
break
else:
print('密码不正确')
else:
print('对不起,三次密码错误')
#结果
请输入密码:85220
密码不正确
请输入密码:888
密码不正确
请输入密码:8888
密码正确
#使用while循环
a=0
while a<3:
pwd=input('请输入密码')
if pwd=='8888':
print('密码正确')
break
else:
print('密码不正确')
"""改变变量"""
a+=1
else:
print('对不起,三次密码均输入不正确')
#结果
请输入密码1234
密码不正确
请输入密码5678
密码不正确
请输入密码8888
密码正确