1、概念:往复执行,重复执行一段相同处理逻辑的代码2
2、while循环
1,语法结构
while 条件:
#循环体
2.案例
1.输出100遍 hello world
i=0
while index < 100: #条件,从0到99循环100次
print("hello world")
index+=1 #在循环的基础上每次加1
2.0~100的和
i=0
sum=0
while i<=100:
sum+=i
i+=1
print(sum)
结果:
5050
3.求一些三位数被5.6.7整除
i=100
while i < 1000:
if i%5==0 and i%6==0 and i%7==0:#限定条件同时被5、6、7整除
print(i)
i+=1
结果:
210
420
630
840
3.break、continue关键字
1.break关键字——终止循环,满足一定条件时终止循环。
2.continue关键字——跳过本次循环,直接进入下一次循环。
3.案例
1.#break关键字
index=0
while index<=10:
if index ==5:#当index=5时中止循环
break
print(index)
index+=1
结果0
1
2
3
4
2.#continue关键字
index=0
while index<=10:
index+=1 #放在循环体里面,条件外面
if index ==5:#当index=5时,continue(终止本次循环,但执行后面循环)。
continue
print(index)
结果:
1
2
3
4#没有5
6#直接循环到6
7
8
9
10
11
4.用while双层循环实行9x9乘法表(嵌套循环)
i=1
while i<=9:
s=1
while s<=i:
print("{}x{}={} ".format(s,i,s*i),end="")
s+=1
print()
i+=1
2、for循环——用于迭代容器中的元素
1、语法结构
for 变量 in 迭代对象:
#每次会取出一个容器中的元素放在这个变量中
2、range函数
***1、表示范围***
***a.range(num)——[0,num)——当只有一个数字的时候***
***b.range(start,end)——[start,end)——当告诉你范围时,前开后闭。***
***2、表示步长***
***range(start,end,step)#start表示起点,end表示终点,step表示步长。***
***eg;range(10,21,2)=10,12,14,16,18,20
***
3、案例
1、用for循环打印9x9乘法表
for i in range(1,10):
for j in range(1,i+1):
print("{}x{}={} ".format(j,i,j*i),end="")
print()
2、判断质数
#判断次数是不是质数
num=int(input("请输入一个数字:"))
for i in range(2,num):
if num%i==0:
is_prime=False
else:
continue
if is_prime:
print(f'{num}是质数')
else:
print(f'{num}是合数')
print()
3、水仙花数
#水仙花数
i=100
a=0#百位
b=0#十位
c=0#个位
number=0
print("1000以内的水仙花数")
while i<1000:
a=i//100#(一个三位数除100得到百位)
b=(i-a*100)//10#(把三位数减去百位乘上100得到十位,把十位整除10得十位)
c=(i%10)#(把三位数除10的余数就是个位)
if i==a**3+b**3+c**3:
print(i)
i+=1
结果:
1000以内的水仙花数
153
370
371
407