01 while 循环的基础语法
(1)while 条件:
条件满足,做1
条件满足,做2
..........
i=0
while i<100:
print("美丽")
i+=1
(2)练习案例
while 循环,计算从1-100的和
02 while 循环的基础案例
无限次机会猜测数字,如果猜大了就输出数字大,猜小了就输出数字小,累计次数
import random
from itertools import count
num = random.randint(1,100)
count =0
#用bool变量来进入循环
flag = True
while flag:
#判断猜对还是猜错
count+=1
guess__num =int(input("请输入数字:"))
if guess__num ==num:
print("猜对了")
flag =False
else:
if guess__num>num:
print("大了")
else:
print("小了")
print(f"共猜了{count}次")
03 while循环的嵌套应用
表白100天,每天都送10朵玫瑰花
#外层循环,天数
i=0
while i<=100:
print(f"今天是第{i}天,准备表白")
#内层循环,玫瑰花数
j=1
while j<=10:
print(f"送给小美的第{j}朵玫瑰")
j+=1
print("love")
i+=1
print(f"坚持到第{i-1}天")
while循环嵌套案例:打印九九乘法表
(1)print语句输出不换行功能:print("Hello",end=' ') print("world",end=' ')
(2) 多行字符串进行对齐 \t print("hello\tworld") print(itheima\test)
#打印九九乘法表
#外层循环
i=1
while i<=9:
#内层循环变量
j=1
while j<=i :
print(f"{j}*{i}={j*i}\t",end='')
j+=1
i+=1
print()
if 和 while 的区别
(1)if用于执行一次代码
(2)while 用于执行循环代码
(3)由于需要重复执行1-9的操作,所以需要用while来重复执行代码
04 for循环的基础语法
(1) 轮循机制,对一批内容进行“逐个处理
(2) for 临时变量 in 待处理数据集:
循环满足条件时执行的代码
依次取出数据集的内容,依次处理,无法构建无限循环
name = "itheima"
for x in name:
#将name的内容,挨个取出来赋予x临时变量
print(x)
05 range 语句
(1)range(num) 获取一个从0开始,到num结束的数字序列(不含num本身)
range(5)取得的数据是:【0,1,2,3,4】
(2) range(num1,num2) 获取一个从num1开始,到num2结束的数字序列,不包含num2
(3) range (num1,num2,step) 获取一个从num1开始,到num2结束的数字序列,不包含num2
step表示数字之间的步长,例如range(5,10,2)取得的数据是【5,7,9】
for x in range(10):
#从0-9
print(x)
for x in range(5,10):
#从5-9
print(x)
for x in range(5,10,2):
#从5-10,步长为2
print(x)
例题:判断1-100之间有多少偶数
num=100
i=0
for x in range(1,num):
if x%2==0:
i+=1
print(f"1到100范围内,有{i}个偶数")
06 for循环的变量定义域
临时变量的作用域限定为循环内,这种限定是编程规范的限定,而非强制限定
07 for循环的嵌套使用
for 临时变量 in 待处理数据集:
事情1
事情2
事情N
.......
for 临时变量 in 待处理数据集:
事情1
事情2
事情N
案例:每天都向小美表白,直到成功为止;每次表白的流程是送10多玫瑰然后表白
x=0
for x in range(1,101):
print(f"今天是表白的第{x}天,坚持")
for i in range (1,11):
print(f"送给小美的第{i}朵玫瑰 ")
print("love")
print(f"第{x}天,成功")
for 和 while 相互嵌套
i=0
while i<=100:
print(f"这是坚持表白的第{i}天")
for x in range (1,11):
print(f"送给小美的第{x}朵玫瑰")
i+=1
print("love")
print(f"第{i-1}天,坚持")
for循环或while循环:
事情1
事情2
for循环或while循环:
事情1
事情2
事情N
案例:打印九九乘法表
#for循环或while循环打印九九乘法表
#外层循环
for x in range(1,10):
#内层循环
i=1
while i<=x:
print(f"{i}*{x}={i*x}\t",end='')
i+=1
#换行
print()
08 循环中断 continue和break循环
(1)continue关键字用于中断本次循环,进入下一次循环
(2)在for循环和while循环中,效果一致
for i in range(1,100):
语句1
continue
语句2
for i in range(1,3):
#外层循环
print("语句1")
for j in range (1,4):
#内层循环
print("语句2")
continue
#不执行
print("语句3")
#和语句1执行同样的次数
print("语句4")
(3)break语句:直接结束所在循环
在循环内,遇到break就结束循环,所以执行了语句1之后,就直接执行语句3
09 发放工资问题
i=1
import random
#员工等级
for x in range(1,21):
#这20个人的等级是随机的,所以把level放在for循环里面
level = random.randint(1,10)
#等级不足,就不发放工资,不执行下面的语句,用continue
if level <5:
print(f"员工{x},绩效分{level},不发工资,下一位")
continue
else:
#等级合适,余额有钱,继续
money=10000-1000*i
if money>=0:
print(f"向员工{x},发放工资1000元,账户余额还剩{10000-1000*i}元")
i+=1
else:
print("余额不足,不发了")
break