Python--02--流程控制语句

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 1.分之
    • [1.1 单分支](#1.1 单分支)
    • [1.2 双分支](#1.2 双分支)
    • [1.3 多分支](#1.3 多分支)
    • [1.4 嵌套分之](#1.4 嵌套分之)
  • 2.循环
    • [2.1 while 循环](#2.1 while 循环)
    • [2.2 for 循环](#2.2 for 循环)
    • [2.3 对比 while 与 for](#2.3 对比 while 与 for)
    • [2.4 嵌套循环](#2.4 嵌套循环)
    • [2.5 九九乘法表案例](#2.5 九九乘法表案例)
    • [2.6 continue 与 break](#2.6 continue 与 break)
    • [2.7 综合案例](#2.7 综合案例)

1.分之

  • 分支有很多其他的称呼,比如:条件控制语句、分支语句、选择语句。
  • 分之是通过条件判断,来决定执行哪些代码。

1.1 单分支


1.2 双分支


1.3 多分支


1.4 嵌套分之



python 复制代码
age = int(input('请输入你的年龄:'))
has_report = input('您是否提交了体检报告?(是/否)')
level = int(input('请输入你的会员等级(1/2/3)'))

print('******⬇️程序的识别结果如下⬇️:******')
if 18 <= age <= 45:
    print('✅️您的年龄符合比赛要求!')
    if has_report == '是':
        print('✅️您已提交体检报告!')
        print('✅️您可以参加比赛!')
        if level == 1:
            print(f'😊尊敬的{level}会员,比赛结束后,您可以领取纪念T恤👕一件!')
        elif level == 2:
            print(f'😊尊敬的{level}会员,比赛结束后,您可以领取专业跑鞋👟一双!')
        elif level == 3:
            print(f'😊尊敬的{level}会员,比赛结束后,您可以领取运动耳机🎧️一副!')
        else:
            print('❌您输入的会员等级不正确!')
    elif has_report == '否':
        print('❌您未提交体检报告,不能参加比赛!')
    else:
        print('❌您输入的体检报告有误!')
else:
    print('❌抱歉,参赛年龄需要在18~45之间!')

2.循环

  • 循环是一种让代码"重复执行"的机制,当某个条件成立时,程序会反复执行一些语句,直到条件不再满足时,再停止运行。

2.1 while 循环



2.2 for 循环




2.3 对比 while 与 for

2.4 嵌套循环

python 复制代码
# for循环实现
day = 1
for day in range(1,31):
    print(f'********📅第{day}天********')
    for group in range(1,4):
        print(f'💪这是第{group}组仰卧起坐')
    print(f'✅第{day}天任务已完成!明天继续!\n')
print(f'🎉为期{day}天的健身计划完成,我的腹肌在闪闪发光!')
python 复制代码
# while循环实现
day = 1
while day <= 30:
    print(f'********📅第{day}天********')
    group = 1
    while group <= 3:
        print(f'💪这是第{group}组仰卧起坐')
        group += 1
    print(f'✅第{day}天任务已完成!明天继续!\n')
    day += 1
print(f'🎉为期{day - 1}天的健身计划完成,我的腹肌在闪闪发光!')

2.5 九九乘法表案例

python 复制代码
print("99乘法表")
n = 1
while n <= 9:
    i = 1
    while i <= n:
        print(f'{i}*{n}={i*n}', end=' ')
        i += 1
    print("")
    n += 1
print('=======================================================')

# for循环实现九九乘法表
for row in range(1, 10):
    for item in range(1, row + 1):
        print(f'{item}*{row}={item * row}', end='\t')
    print()

2.6 continue 与 break

1️⃣测试continue

python 复制代码
# 测试continue
for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    continue
    print('睡觉')

for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    if day == 2:
        continue
    print('睡觉')

for day in range(1, 5):
    if day == 2:
        continue
    print(f'********第{day}天********')
    print('吃饭')
    print('睡觉')

for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    for item in range(1, 3):
        print(f'面包{item}')
        continue
        print(f'牛奶{item}')
    print('睡觉')

for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    for item in range(1, 3):
        print(f'面包{item}')
        if day == 4 and item == 2:
            continue
        print(f'牛奶{item}')
    print('睡觉')

2️⃣测试break

python 复制代码
for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    break
    print('睡觉')

for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    if day == 2:
        break
    print('睡觉')

for day in range(1, 5):
    if day == 2:
        break
    print(f'********第{day}天********')
    print('吃饭')
    print('睡觉')

for day in range(1, 5):
    print(f'********第{day}天********')
    print('吃饭')
    for item in range(1,3):
        print(f'面包{item}')
        if day == 4 and item == 2:
            break
        print(f'牛奶{item}')
    print('睡觉')

2.7 综合案例

python 复制代码
print('🏆欢迎来到:答题闯关挑战赛(输入q可随时退出)\n')

# 题目与答案
ques1, ans1 = 'Python中用于输出的函数是?', 'print'
ques2, ans2 = 'Python中用于表示逻辑"并且"的关键字是?', 'and'
ques3, ans3 = 'Python属于编译型还是解释型?', '解释型'

# 最多可尝试次数
max_tries = 3
# 总关卡数
total_levels = 3
# 是否处于可游戏状态
is_playing = True

# 根据题目数量开始循环
for level in range(1, total_levels + 1):
    # 打印当前是第几关
    print(f'********🎯第{level}关********')
    # 取出当前关卡所对应的题目和答案
    if level == 1:
        question, answer = ques1, ans1
    elif level == 2:
        question, answer = ques2, ans2
    else:
        question, answer = ques3, ans3
    # 记录当前关卡的尝试次数
    tries = 1
    # 若已经尝试的次数,小于等于最大尝试次数,则进入循环
    while tries <= max_tries:
        # 向用户提问
        user_input = input('📢'+question)
        # 根据用户的输入,来决定做什么
        if user_input == answer:
            print('✅回答正确!\n')
            break
        elif user_input == '':
            print('⚠️您的输入为空,请重新作答!\n')
            continue
        elif user_input == 'q':
            print('👋您已退出游戏!\n')
            is_playing = False
            break
        else:
            # 计算剩余次数
            leave = max_tries - tries
            # 判断是否还有剩余次数
            if leave > 0:
                print(f'❌回答错误,您还剩{leave}次机会!\n')
                tries += 1
                continue
            else:
                print(f'😢挑战失败,本题的正确答案是:{answer},游戏结束!')
                is_playing = False
                break
    # 每次进入下一关之前,都要看一下is_playing,如果is_playing为False就要结束游戏!
    if not is_playing:
        break
# 如果到了这里,is_playing的值依然为True,那就意味着用户已经通关了!
if is_playing:
    print('🎉🎉🎉恭喜您!全部通关!🎉🎉🎉')
相关推荐
星火开发设计7 分钟前
C++ multiset 全面解析与实战指南
开发语言·数据结构·c++·学习·set·知识
dagouaofei7 分钟前
AI 生成 2026 年工作计划 PPT,模板与结构能力对比
人工智能·python·powerpoint
木头左8 分钟前
波动率期限结构调整策略在指数期权日历价差中的应用研究
python
lsx2024061 小时前
Eclipse 添加书签
开发语言
易营宝1 小时前
高效的跨境电商广告优化系统:易营宝广告投放实操指南
大数据·开发语言·人工智能·php
superman超哥1 小时前
路由的艺术:Rust Web 框架中的高效匹配与类型安全提取
开发语言·rust·编程语言·rust web框架·rust路由
hqwest1 小时前
码上通QT实战22--趋势页面01-准备图表对象
开发语言·qt·qpainter·qss·painevent·qt绘图事件
轻竹办公PPT1 小时前
2026 年工作计划汇报 PPT:AI 生成方案实测对比
人工智能·python·powerpoint
山土成旧客1 小时前
【Python学习打卡-Day42】打开深度学习“黑箱”:从Hook回调到Grad-CAM可视化
python·深度学习·学习
axinawang1 小时前
四、Python程序基础--考点--浙江省高中信息技术学考(Python)
python·浙江省高中信息技术