Python34-35:核心语法-流程控制语句-循环-综合案例

案例一:break与continue

while循环关注的是循环开始和结束的条件,如果你不清楚要循环多少次,但是你知道循环开始和结束的条件,那这个时候你就可以使用while循环来操作;如果清楚地知道要循环多少次,或者是要对数据集当中的每一个元素进行遍历,然后对元素进行进一步处理,那就比较适合用for循环。

python 复制代码
# 需求:根据输入的用户名密码执行登录操作

"""
关键字:
    break:只能够出现在循环中,表示结束、跳出循环的含义 (break跳出循环时,while后面的else中的代码将不会执行。)
    continue:只能够出现在循环中,表示中断本次循环,直接进入下一次循环
"""

while True:
    # 1. 接收输入的用户名和密码
    username = input("请输入正确的用户名:")
    password = input("请输入正确的密码:")

    # 2. 校验:输入的用户名和密码不能为空!
    if username == "" or password == "":
        print("输入的用户名和密码不能为空!请重新输入")
        continue    # 结束当前循环,直接进入下一次循环

    # 3. 判断用户名和密码的正确性,执行登录操作
    if username == "admin" and password == "666888":
        print("登录成功,进入B站首页~")   # 删除行 ctrl+Y
        break
    elif username == "zhangsan" and password == "123456":
        print("登录成功,进入B站首页~")
        break
    elif username == "taoge" and password == "888666":
        print("登录成功,进入B站首页~")
        break
    else:
        print("用户名或密码错误,请重新输入!")

总结:

break关键字的作用:不能够单独书写,只能出现在循环中,表示结束、跳出的意思。

continue关键字的作用:不能够单独书写,只能出现在循环中,表示中断本次循环,直接进入下一次循环。

这两个关键字在while/for循环里都可以用。

案例二:猜数字游戏

随机数

import random

random_num = random.randint(a:1,b:100)

python 复制代码
# 猜数字游戏

import random
random_num = random.randint(1,100)  #生成随机数

while True:
    # 接收输入的数字
    num = int(input("请输入一个数字:"))

    # 比较
    if num > random_num:
        print("您输入的数字太大了!")
    elif num < random_num:
        print("您输入的数字太小了!")
    else:
        print("恭喜您,猜对了!")
        break

print("随机生成的数字是:", random_num)

练习

python 复制代码
# 需求1:将1-1000之间(含1000)所有的5的倍数的数字累加起来。
total = 0
for i in range(1, 1001, 1):
    if i % 5 == 0:
        total += i
print(total)    # 100500

# 优化版
total = 0
# 从 5 开始,每次 +5,直到 1000 → 直接就是所有 5 的倍数
for i in range(5, 1001, 5):
    total += i
print(total)  # 结果一样:100500
python 复制代码
# 需求2:统计字符串 "lkdjwlkydnyisbjdkliuwuqjmydlnwapxidlkeyxnhyahg"  中有多少个 w 和 y。
# 把要统计的长字符串存到变量 chuan 里
chuan = "lkdjwlkydnyisbjdkliuwuqjmydlnwapxidlkeyxnhyahg"
# 专门记 w 出现了几次,一开始是 0
w_count = 0
# 专门记 y 出现了几次,一开始也是 0
y_count = 0

# 循环:一个字符一个字符地检查这个字符串
for i in chuan:
    # 如果当前字符是 w → w的计数器 +1
    if i =="w":
        w_count += 1
    # 如果当前字符是 y → y的计数器 +1
    elif i =="y":
        y_count += 1

# 格式化输出最终结果
print(f"在这个字符串中,w有{w_count}个,y有{y_count}个")

**声明:**本篇学习笔记参考黑马程序员相关课程,部分素材来源于网络公开资料及本人补充;文中为个人整理复盘,仅供学习交流使用。

相关推荐
刘马想放假9 小时前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
2601_9679873710 小时前
python判断变量名不要调用任何函数实现
python·函数·语法·判断·变量名
卷无止境10 小时前
SALib敏感性分析的python库学习笔记
后端·python
duansamve11 小时前
Python3+Flask+PostgreSQL18+Vue3项目生产环境用docker如何部署?
python·docker·flask
特立独行的猫A12 小时前
少 3 个环节、少 1 次 ABI、少 3500 行代码:cj-tauri 与 Ionic/Capacitor 的鸿蒙桥接机制对比
java·后端·python
特立独行的猫A12 小时前
cj-tauri vs Rust/Tauri 同款播放器实测:编译 21 秒 vs 11 分钟,磁盘 12 MB vs 1.2 GB
java·后端·python
duansamve13 小时前
详解Flask中Session和Cookie
python·flask
威哥爱编程13 小时前
模拟面试智能体开发实战 04:面试聊到哪算哪?用状态机把整场面试编排起来
python·agent·harmonyos
威哥爱编程13 小时前
模拟面试智能体开发实战 03:AI 面试官太客气?人设 Prompt 让它像个真考官
python·agent·harmonyos
量化分析码农14 小时前
股票数据接口返回字段逐项解析:从在线验证到 Python 数据校验
python