1.while循环
i=0
while i<100:
print("lanyou I like you")
i+=1
# 练习案例,求1+·····+100的和
i=0
sum=0
while i<=100:
sum+=i
i+=1
print(sum)
2.while猜数字案例
# 无限次猜测,直到猜中为止
# 每一次猜不中,会提示大了或者小了
# 猜玩数字后,提示猜了几次
import random
num=random.randint(1,100)
a=True
i=0
while a:
gress=int(input("猜数字(1-100):"))
i+=1
if gress==num:
a=False
print(f"恭喜猜中了,你猜了{i}次")
elif gress>num:
print("猜大了,再猜一次吧")
else:
print("猜小了,再猜一次吧")
3.while循环嵌套
# 每天向蓝幽表白,并且送3朵玫瑰花,累计表白100天成功
i=0
while i<=100:
print(f"今天是第{i}天表白")
j=1
while j<=3:
print(f"这是今天送的第{j}朵玫瑰花")
j+=1
i+=1
print("蓝幽,I like you")
print(f"今天是第{i-1}天表白,终于表白成功了")
4.while循环嵌套案例
# while循环嵌套打印九九乘法表
i=1
while i<10:
j=1
while j<=i:
sum=i*j
print(f"{i}*{j}={i*j}\t",end="")
j+=1
i+=1
print() # 换行输出
5.for循环基础语法
# x为临时变量,这个语句意思是将name中的字符逐个赋予给x打印出来
# for循环注意点:1.无法定义循环条件,只能被动取出数据处理 2.循环内的语句,需要有空格缩进
name="lanyou"
for x in name:
print(x)
6.for循环案例
#定义字符串变量name,內容为:oritheima is a brand of itcast"
# 通过for循环,遍历此字符串 lanyoushigeaixuederen,统计有多少个英文字母:"a"
"""
提示:
1. 计数可以在循环外定义一个整数类型变量用来做累加计数
2.判断是否为字母"a",可以通过计语句结合比较运算符来完成
"""
name="lanyoushigeaixuederen"
i=0
for x in name:
if x=="a":
i+=1
print(f"{name}里面有{i}个a")
7.range语法
# range是一个序列
a=range(5)
print(a)
for x in a:
print(x,)
a=range(5,10)
print(a)
for x in a:
print(x,)
a=range(5,10,2)
print(a)
for x in a:
print(x,)# 5,7,9 2为步长
8.range使用案例
# 有几个偶数
# 定义一个数字变量num,内容随意并使用range()语句,
# 获取从1到num的序列,使用for循环遍历它。在遍历的过程中,统计有多少偶数出现
"""
提示:
1.序列可以使用:range(1, num)得到
2. 偶数通过计来判断,判断数字余2是否为0即可
"""
num=int(input("输入一个最大数,必须大于1"))
i=0
for x in range(1,num):
if x%2==0:
i+=1
print(f"有{i}个偶数")
#关于x的作用域问题,本来x的作用域应只在for循环内,但是在python中在域外也能访问到x,这是不符合规范的,
#如果想用临时变量x,最好在for循环前面定义一个x就像
x=0
for x in range(5):
print(x)
print(x)
9.for循环的嵌套使用
# 给蓝幽送玫瑰花,每天送10朵,并送一百天,最后表白成功
i=0
for i in range(1,101):
print(f"今天是我的第{i}天表白,我喜欢你蓝幽")
for j in range(1,11):
print(f"这是今天我送的第{j}朵玫瑰花")
print(f"今天是第{i}天,蓝幽答应我了")
10.for循环嵌套九九乘法表
# 九九乘法表
i=1
for i in range(1,10):
j=1
for j in range(1,i+1):
print(f"{i}*{j}={i*j}\t",end="")
j+=1
i+=1
print()
11.continue和break的使用
"""
1.continue的作用是:
中断所在循环的当次执行,直接进入下一次
2.break的作用是:
直接结束所在的循环
3. 注意事项:
continue和break,在for和while循环中作用一致
在嵌套循环中,只能作用在所在的循环上,无法对上层循环
"""
for i in range(3):
print("qqqq")
for j in range(3):
print("www") #会循环三次www
continue
print("eeeee")
print("rrrrr")
for i in range(3):
print("qqqq")
for j in range(3):
print("www") # 只会循环一次www
break
print("eeeee")
print("rrrrr")
12.循环综合案例
# 发工资
"""
某公司,账户余额有1W元,给20名员工发工资。
园工编号从1到20 从编号1开始,依次领取工资,每人可领取1000元
领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位
如果工资发完了,结束发工资。
"""
"""
提示:
使用循环对员工依次发放工资
continue用于跳过员工,break直接结束发工资
随机数可以用:
"""
import random
b=10000
i=1
for i in range(20):
a=random.randint(1,10)
if a<5:
print(f"员工{i},绩效分{a},低于5,不发工资,下一位")
continue
elif b==0:
print(f"员工{i},余额为0,没有工资了")
break
else:
b-=1000
print(f"员工{i},绩效分{a},向员工{i}发放工资1000元,账户余额还有{b}")