什么是循环?
1.循环有起点
2.循环有条件
终止循环------------------break
跳过循环(直接忽略下面所有的程序,直接进入到下一轮循环)------------------continue
关于while循环和for循环,下面看几个例子就明白了
一、while循环
while循环的用法
1、倒计时练习:
#导入时间工具包
import time
count=5
while count>=1:
print(count)
#让程序睡1秒
time.sleep(1)
count -= 1
print('boom!')
2、三位数中所有35倍数之和:
count=100
s=0
while count<=999:
count+=1
if count%35==0:
s = s + count
print(s)
3、输出三位数中的回文数(百位数和个位数相同):
count=100
while count <=999:
d= count%10
if count//100 == d:
print(count)
count+=1
4、九九乘法表:
# 乘法口诀表
i=1
while i<=9:
j=1
while j<=i:
#end=''代表不换行,后面直接接下去;end=' '代表后面加一个空格
print('%d*%d=%d'%(j,i,j*i),end=' ')
j+=1
#空print()代表换行
print()
i+=1
5、猜拳游戏:
#电脑代表n1 玩家代表 n2
import random
while True:
n1 = random.randint(1, 3)
n2 = int(input('请输入你要出的拳:1---石头 2---剪子 3---布 0----代表退出'))
if n2==0:
print('今天不想玩了,程序结束!')
break
#not(n2==1 or n2==2 or n2==3)
elif n2!=1 and n2!=2 and n2!=3:
print('您输入的数字不对,请重新输入')
continue
if n1==1:
print('电脑出的是拳')
elif n1==2:
print('电脑出的是剪子')
elif n1==3:
print('电脑出的是布')
if n2==1:
print('玩家出拳')
elif n2==2:
print('玩家出剪子')
elif n2==3:
print('玩家出布')
if n1==n2:
print('平局')
elif (n1==1 and n2==3) or(n1==2 and n2==1) or(n1==3 and n2==2):
print('玩家赢!')
else:
print('电脑赢!')
#石头-----1 剪子-----2 布------3
#玩家赢
#平局
#电脑赢
6、猜数字大小:
import random
n1=random.randint(1,10)
print(n1)
i=4
while i>=0:
n2=int(input('请输入您猜测的数字'))
if n2==0:
print('今天不想玩了,下次来吧!')
break
if n2>n1:
print('猜大了,请重新再猜!你还剩下%d次机会'%i)
elif n2<n1:
print('猜小了,请重新再猜!你还剩下%d次机会'%i)
elif n2==n1 :
print('猜对了')
break
if i==0:
print('你今天的机会用完了!请下次再来!')
break
i-=1
二、for循环
先给大家介绍一下range()函数的用法
range()函数:
range(start,end,setp=1)
range(m,n)是生成范围的方法,依次有序的生成 m ~ n-1的元素
#i代表的是循环遍历得到的每一个元素
#for....in....
#for 每一个元素 in 要遍历的东西
for i in range(1,10):
print(i)
#range(6) 代表生成0,1,2,3,4,5 也代表6次
#range(1,6) 代表生成1,2,3,4,5 代表5次
#range(1,6,2) 生成1,3,5 2代表每次走两步
for循环的用法
1、把一串数字中的偶数打印出来:
#把这一串数字中的偶数打印出来
for i in '0123456':
if int(i)%2==0:
print(i)
#for是自动迭代,不需要设置+=1
2、猜数字大小:
import random
# 电脑生成随机数
n2=random.randint(1,100)
print(n2)
for i in range(0,5):
n1=int(input('请输入您猜测的数字'))
if n1>n2:
print('大了')
elif n1<n2:
print('小了')
elif n1==0:
print('游戏失败!')
break
elif n1==n2:
print('猜对了')
print('游戏胜利!')
break
if i==4:
print('游戏失败!')
3、九九乘法表:
for i in range(1,10):
for j in range(1,i+1):
print('%d*%d=%d'%(j,i,i*j),end=' ')
print()
4、最大公约数和最小公倍数:
# 输入两个数值,求两个数的最大公约数和最小公倍数
a=int(input('请输入第一个数:'))
b=int(input('请输入第二个数:'))
if a>b:
# a b交换
a,b=b,a
value=1
for i in range(1,a+1):
if b%i==0 and a%i==0:
value=i
print(value)
#最小公倍数
maxbeishu=a*b/value
print(maxbeishu)