# lesson4: for 循环
"""
while循环 是自定义循环条件
for循环 是一种轮询机制,一批内容逐个处理
"""
"""
for 临时变量 in 待处理数据集:
循环满足条件时,执行代码
"""
# example
str = "whoami"
for x in str:
print(x)
"""
for循环无法定义循环条件,被动取出数据处理
循环语句 + 循环嵌套 == 注意缩进
"""
#lesson5: count(a)
print("====lesson5=====\t")
str = "weqeqa sd a qweqas re fsdfa"
count = 0
for i in str:
if i == "a":
count +=1
print(f"there are {count} a here.")
# lesson6: range
"""
range(num) 获取数字序列
从 0 开始 到 num, 不含num本身
range(3) = 0, 1, 2
range(num1, num2)
从num1开始 到 num2, 不含num2本身
range(1, 3) = 1, 2
range(num1, num2, step)
从num1开始 到 num2, 不含num2本身
step 默认值为 1
range(5, 10 ,2) == 5, 7, 9
range 锁定 for循环执行的次数
"""
for i in range(5):
print(i)
for i in range(5, 10):
print(i)
for i in range(5, 10, 2):
print(i)
for i in range(3):
print("love you")
# lesson7: for循环嵌套
"""
for 临时变量 in 待处理数据集(序列):
执行任务1
执行任务N
...
for 临时变量 in 待处理数据集(序列):
执行任务1
执行任务N
...
"""
for i in range(1, 5):
print(f"this is the {i} day")
for j in range(1, 4):
print(f"this is the {j} flower")
print("love you")
print(f"{i} day , success\t")
# lesson8: 9*9 table + for
# 外层循环控制行数 == 1~9行
for i in range(1,10):
# 内层循环控制每行数据
for j in range(1, i + 1):
# 内层循环中输出每行内容
print(f"{j} * {i} = {j * i}\t", end=" ")
# 外层循环通过print输出回车
print()
print("======lesson9 循环控制========\t")
"""
continue
中断本次循环,直接进入下一次循环
for循环和while循环,效果一致
作用范围:跳过特殊情况 + 临时结束本次循环
for i in range(1, 10):
print("语句1")
continue # 遇到 continue 结束当前循环,语句2不执行
print("语句2")
break
直接结束循环
for循环和while循环,效果一致
for i in range(1, 10):
print("语句1")
break # 遇到 break 结束当前循环,语句2不执行,直接执行语句3
print("语句2")
print("语句3")
"""
# continue 例子
for i in range(1,6):
print("11111111111111111111")
continue
print("22222222222222222222")
# continue在循环嵌套中作用
"""
continue 只能控制:他在循环临时中断
"""
for i in range(1,5):
print("3333333333")
for j in range(1,4):
print("44444444444")
continue # 影响 j 循环
print("55555555555555")
print("66666666666")
print("77777777777")
# break example
for i in range(1,101):
print("语句1-break")
break
print("语句2-break")
print("语句3-break")
"""
break 只能控制:他所在循环结束
"""
for i in range(1,6):
print("break-5-555555555")
for j in range(1,6):
print("break-6-666666666666")
break
print("break-7-777777777777")
print("break-8888888888888")
print("99999999999999999")
# lesson9: 案例
money = 10000
# 对20名发工资
for i in range(1,21):
import random
score = random.randint(1,10)
if score < 5:
print(f"员工{i}, 绩效分{score},不满足发工资,下一位")
# continue 跳过发放
continue
# 判断余额
if money >= 1000:
money -= 1000
print(f"员工{i},满足条件发放工资1000, 账户余额{money}")
else:
print(f"余额不足,当前余额{money}")
break
# while
""""
while 条件:
任务1
任务2
...
"""
# example
i = 0
while i < 3:
print("who am i?")
i += 1
print("=========\n")
"""
条件是布尔类型结果 == True 继续,False 结束
while True 无限循环
需要循环终止条件
空格缩进和if判断一致
"""
# sum(1,3)
i = 1
sum = 0
while i <= 3:
i += 1
sum = sum + i
print(f"sum(1,3) = {sum}")
print("=====lesson3======\n")
# lesson3: print 不换行
"""
print("str", end="")
end 参数决定是否换行
"""
# end = " " 为不换行
print("hello", end=" ")
print("worlds", end=" ")
print("\n")
# \t == 制表符 == Tab键的功能
"""
多行字符串对齐
"""
print("hello world")
print("hello123 best123")
print("hello\tworld")
print("hello123\tbest123")
# 9*9 table == 注意
"""
控制行 i <= 9
控制每一行输出循环 j <= i
每一行的输出 j * i
"""
# 定义外层循环
i = 1
while i <= 9:
# 定义内循环
j = 1
while j <= i:
# 内循环不换行 + \t对齐 + end=""不换行
print(f"{j} * {i} = {j * i}\t", end=" ")
j += 1
i += 1
print() # 输出一个换行
# lesson2 : while 循环嵌套
print("=====lesson2======\n")
""""
while 条件1:
任务1-1
任务1-2
while 条件2:
任务2-1
任务2-2
...
"""
i = 1
while i <= 3:
print(f"today is the {i} day")
j = 1
# j 假如由0开始则有3个数字
# 0 1 2 3 4
while j <= 2:
print(f"send you {j} flowers")
j += 1
print("you are the best")
i += 1
# i = 4时候 == i的while循环停止
print(f"{i -1} day, success {i}")
"""
循环语句的嵌套,注意空格缩进 == 层次关系
避免无限循环
"""
# lesson1: while base use
print("=====lesson1=======\n")
# 猜数字
# 无限机会
# 提示大小
# 提示猜测了多少次
# 获取1~100数字
import random
num = random.randint(1,100)
#布尔变量 == 标记是否继续
flag = True
count = 0
while flag:
guess_num = int(input("number ? "))
count += 1
if guess_num == num:
print("right")
# false == done the while
flag = False
else:
if guess_num > num:
print("big")
else:
print("small")
print(f"after {count} try, success")
Python循环:while + for 简记 黑马课程
于 2022-11-14 23:27:34 首次发布