循环
一·for循环
循环 - 让代码重复执行(代码写一遍,运行的时候
可以多次执行)
1· for循环
"""
语法:
for 变量 in 序列:
循环体
说明:
for、in - 关键字,固定写法
变量 - 写一个变量名。(可以是已经定义过的,也可以是没有定义过的)
序列 - 容器型数据类型对应的数据,常见序列:字符串、列表、元祖、字典、集合、迭代器、生成器、range.
: - 固定写法
循环体 - 和for保持一个缩进的一条或者多条语句;就是需要重复执行的代码。
执行过程:
让变量去序列中取值,一个一个的取,取完为止,每取一个值执行一次循环体。
for循环循环的次数和序列中元素的个数有关
"""
print(‘用法1:直接控制循环次数’)
for x in range(100):
print(x,‘hello’)
2.range函数 - 产生指定范围的数字序列
1)range(N) - 产生[0,N)的数字序列,步长是1
2)range(M,N) -产生[M,N)的数字序列,步长是1
3)range(M,N,step) - 产生[M,N)的数字序列,步长为step指定的值
for x in range(10):
print(x)
打印100-200中所有个位数等于3的数
for x in range(100,201)
if x % 10==3:
print(x)
或者
for x in range (103,200,10):
print(x)
打印所有的水仙花数
for num in range(100,1000):
ge=num%10
shi=num//10%10
bai=num//100
if ge3+shi3+bai**3==num:
print(num)
二·两个套路
1.统计100以内能被3整除的偶数的个数
count=0
for x in range(1,100,6)
if x%6==0:
count +=1
print(‘100以内能被3整除的偶数的个数’,count)
2·统计100以内偶数的个数
count=0
for x in range (0,101,2):
count += 1
print(‘100以内偶数的个数:’,count)
3.计算1+2+3+…100的和
sum1=0
for x in range (1,101):
sum1 += x
print(‘1+2+3+…100:’,sum1)
4·计算所有水仙花数的和
sum1=0
for num in range(100,1000):
ge=num%10
shi=num//10%10
bai=num//100
if ge3+shi3+bai**3==num:
sum1 += num
print(‘所有水仙花数的和:’,sum1)
三·while循环
1· while循环
"""
语法:
while 条件语句;
循环体
说明
while - 关键字,固定写法
条件语句 - 任何有结果的表达式(只有赋值语句不行)
: - 固定写法
循环体 - 和while保持一个缩进的一条或者多余语句;需要重复执行代码
执行过程:
先判断条件语句是否为·True,如果为True就执行循环体,执行完循环体再判断条件是否为True,如果为True就再执行循环体
...以此类推,当条件语句为False循环直接结束。
"""
使用while循环控制程序打印10个’hello’
num=10
while num>0:
print(‘hello’)
num -= 1
while循环控制循环次数的原则:让程序经历过指定次数后由True变成Flase
2.while和for的选择
for循环:循环次数确定时使用
while循环:循环次数不确定时使用(程序员自己都不知道循环次数时)
练习:提示用户不断输入内容,直到输入的内容是0为止
value=input(‘请输入:’)
while value!=0:
value=input(‘请输入:’)
四·循环关键字
1· contion 和break
"""
continue和break只能出现在循环体中
1)continue-结束一次循环/结束当次循环
如果在执行循环体的时候遇到了continue,那么当次循环结束,直接进入下一次循环
2)break-结束整个循环
"""
for x in range(10):
if x==5 or x==8:
continue
print(x)
for x in range(10):
print(x)
if x==3:
break
# 2.有了break的while循环
"""
while True:
需要重复执行的操作:
break
"""
while True:
input('请输入:')
if value=='0':
break
# 3.else
"""
for 变量 in 序列:
循环体
else:
代码段
while 条件语句:
循环体
else:
代码段
else结构的存在不影响原理循环的执行,当循环自然死亡else后面的代码会执行,如果循环是因为遇到break而结束的else后面的代码段不执行
"""
for x in range(4):
print(x,'======')
if x==2:
break
else:
print('else')