1.for循环
# for:循环的是可迭代对象(字符串,列表,字典,元组)
#
# for 临时变量 in 可迭代对象:
# 条件执行代码
# name = "zeno"
# for i in name: # i临时变量 可迭代对象中的元素
# print(i)
name = 123 # int整型 int类型不支持迭代
for i in name: # i临时变量 可迭代对象中的元素
print(i)
2.for循环应用
"""
用户登录
1、用户名和密码输入正确,进入系统 --用户输入
2、错误则继续输入...
3、只有三次输入机会
"""
for i in range(3):
name = input("请输入用户名:")
pwd = input("请输入密码:")
if name == "zeno":
print("用户名输入正确")
if pwd == "123":
print("密码输入正确")
break
else:
print("密码输入不正确")
else:
print("用户名不存在")
else:
print("你已经没有机会了")
3.break和continue
# 5个苹果
# for i in range(1,6):
# print(f"吃到了第{i}个")
# 吃不了这么多苹果,我吃三个就饱了。
# for i in range(1,6):
# # if i == 4:
# # print("吃饱了")
# # break # 跳出循环,不再执行循环代码
# # print(f"吃到了第{i}个")
# 吃苹果的时候,吃到第三个的苹果的时候吃到坏的了
for i in range(1,6):
if i == 3:
print("这个苹果坏掉了,不吃了")
continue # 跳出这个循环然后执行外面的循环
print(f"吃到了第{i}个")
4.while循环
# 循环输出100遍 "对不起,我错了"
# 循环的作用:让代码更高效的执行
"""
while 条件:
条件成立执行的代码
1.1.2.3...100 数据--循环的次数 --变量
2.1+1+1 100
"""
i = 1 # 在工作中,一般我们的计数器不取值为1,取值为0 i = 0
while i<=100: # i<100 i<=99
print("对不起,我错了")# 条件成立执行的代码
i+=1 # 计数器 i=i+1
5.while循环应用
"""
猜数字游戏
1、系统随机生成数字 --random
2、用户5次猜数机会
3、检测猜数大小
4、猜对退出循环--break
"""
import random
num = random.randint(1,100)
print(num)
# while循环
i = 1
while i<=5:
# 猜数
guess = int(input("请输入你要猜的数字:"))
# 1.用户输入数比随机数大,你输入的太大了
if guess>num:
if i==5:
print("你已经没有机会了")
else:
print(f"你输入的太大了,你还有{5 - i}机会")
# 2.用户输入数比随机数小,你输入的太小了
elif guess<num:
if i==5:
print("你已经没有机会了")
else:
print(f"你输入的太小了,你还有{5 - i}机会")
# 3.用户输入数和随机数一样,恭喜你,猜对了,跳出循环了
else:
print("恭喜你,猜对了")
break
i+=1
6.while循环嵌套
# 打印100遍对不起我错了
# 每天洗碗,洗碗之前说3遍对不起我错了,持续3天
# 每天要做的事情
j = 1
while j<=3:
i = 1
while i<=3:
print("对不起,我错了")
i+=1
print("我去洗碗了")
j+=1
7.例子
7.1计算1—100的累加和
# 计算1~100的累加和 1+2+3+4+5....
"""
1.准备做加法运算的数据--初始值
2.准备一个变量去保存将来运算的结果
3.循环做加法运算
4.打印结果
5.验证结果的正确性
"""
i = 1 #初始值
sum = 0 #和
while i<=100: # i<101
# 加法运算 前两个个数的和加第三个数
sum = sum + i # sum+=i
i+=1 # 计数器
print(sum) # 总和
7.2计算1~100之间偶数的累加和
# 计算1~100之间偶数的累加和 2+4+6+10....
"""
1.准备做加法运算的数据--初始值
2.准备一个变量去保存将来运算的结果
3.循环 判断 做加法运算的数据是不是一个偶数 (1)i%2==0 (2)计数器每次加2
4.加法运算
5.打印结果
6.验证结果的正确性
"""
# i =1
# sum =0
# while i<=100:
# # 判断
# if i%2==0:
# sum = sum + i # 求和
# i+=1
# print(sum)
i =0 #
sum =0
while i<=100:
# 判断
sum = sum + i # 求和
i+=2 # i = i+2
print(sum)
7.3九九乘法表
"""
1.打印乘法表达式 i*j=i*j i代表行 j代表的是列
2.一行打印多个表达式 --每行的表达式个数和行号数
3.打印列表达式
"""
# 打印列
j = 1
while j<=9:
# 打印行
i = 1
while i<=j:
print(f"{i}*{j}={i*j}",end=" ") # 不换行
i+=1
print() # 换行
j+=1