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}个")

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

相关推荐
gCode Teacher 格码致知35 分钟前
Pandas教学-18:number与numeric的区别
python·pandas
梦想不只是梦与想3 小时前
Python 中subprocess 模块:执行外部命令
python·subprocess·调用外部命令
懂点Tech4 小时前
ctfshow MISC入门图片篇(信息附加):misc41解题思路
开发语言·python
爱上纯净的蓝天8 小时前
不用云做 RAG:一个本地笔记问答工具的取舍与坑
python·开源·大模型·rag·本地部署
cspttty9 小时前
2027风险管理岗准备路线:数学与应用数学如何补齐金融、SQL与Python
开发语言·python·金融
用户8356290780519 小时前
如何使用 Python 格式化 Excel 单元格中的长文本
后端·python
我命由我123459 小时前
Python 开发 - Python 的 pathlib
java·开发语言·后端·python·学习·java-ee·学习方法
严谨的麻辣烫9 小时前
Python HTTP 连接池怎么用?从连接复用到请求异常排查
开发语言·python·http·requests·网络排查
摇滚侠9 小时前
《Java并发编程之美》第 4 章 Java 并发包中原子操作类原理剖析 阅读笔记 7
java·笔记·python
用户8356290780519 小时前
如何使用 Python 在 Word 文档中创建和格式化列表
后端·python