当前位置: 首页 > news >正文

零基础学习Python之循环详解:从入门到实践_我的学习Python记录11

零基础学习Python之循环详解:从入门到实践_我的学习Python记录11

一、前言

最近我在学习Python,发现很多编程概念和用法都让我感到陌生,尤其是循环这个概念。今天,我将分享我学到的循环知识,希望能帮助到和我一样的初学者。


二、循环的作用

循环是编程中用于重复执行代码块的结构,主要解决以下问题:

  • 重复执行相同/相似操作(如批量处理数据)
  • 遍历集合元素(如列表、字典)
  • 实现持续运行直到满足特定条件

三、循环的分类

Python提供两种循环结构:

  1. while循环 - 基于条件判断的循环
  2. for循环 - 遍历可迭代对象的循环

四、while循环详解

1. 基本语法

while 条件表达式:
    循环体代码

2. 使用示例

# 示例1:计数器循环
count = 0  # 初始化计数器
while count < 5:  # 当count小于5时执行循环
    print(f"这是第 {count+1} 次循环")  # 打印当前循环次数
    count += 1  # 计数器加1

# 输出结果:
# 这是第 1 次循环
# 这是第 2 次循环
# ...
# 这是第 5 次循环

# 示例2:输入验证
password = ""  # 初始化密码变量
while password != "123456":  # 当密码不等于"123456"时执行循环
    password = input("请输入密码:")  # 提示用户输入密码
print("登录成功!")  # 循环结束后打印成功信息

3. 注意事项

  • 必须设置循环终止条件,否则会无限循环
  • 通过修改条件变量控制循环次数
  • 可使用 Ctrl+C 强制终止无限循环

五、break与continue

1. break语句

立即终止整个循环的执行

# 示例:遇到3时终止循环
num = 1  # 初始化变量
while num <= 5:  # 当num小于等于5时执行循环
    if num == 3:  # 如果num等于3
        break  # 终止循环
    print(num)  # 打印当前num值
    num += 1  # num加1

# 输出结果:
# 1
# 2

2. continue语句

跳过当前循环,进入下一次迭代

# 示例:跳过偶数
num = 0  # 初始化变量
while num < 5:  # 当num小于5时执行循环
    num += 1  # num加1
    if num % 2 == 0:  # 如果num是偶数
        continue  # 跳过本次循环
    print(num)  # 打印当前num值

# 输出结果:
# 1
# 3
# 5

六、嵌套循环

1. 基本结构

while 外层条件:
    while 内层条件:
        内层循环体
    外层循环体

2. 使用示例

# 打印九九乘法表
i = 1  # 外层循环变量
while i <= 9:  # 外层循环条件
    j = 1  # 内层循环变量
    while j <= i:  # 内层循环条件
        print(f"{j}×{i}={i*j}", end="\t")  # 打印乘法表达式
        j += 1  # 内层循环变量加1
    print()  # 换行
    i += 1  # 外层循环变量加1

# 输出效果:
# 1×1=1	
# 1×2=2	2×2=4	
# 1×3=3	2×3=6	3×3=9	
# ...

七、for循环详解

1. 基本语法

for 变量 in 可迭代对象:
    循环体代码

2. 使用示例

# 示例1:遍历列表
fruits = ["apple", "banana", "cherry"]  # 定义一个水果列表
for fruit in fruits:  # 遍历列表中的每个元素
    print(f"我喜欢吃{fruit}")  # 打印当前水果

# 示例2:遍历字符串
for char in "Python":  # 遍历字符串中的每个字符
    print(char, end="-")  # 打印字符并用"-"分隔

# 示例3:配合range使用
for num in range(3, 8, 2):  # 生成3到8(不含)的整数,步长为2
    print(num)  # 打印当前数字

3. range()函数详解

  • range(stop):生成0到stop-1的整数
  • range(start, stop)
  • range(start, stop, step)

八、循环对比总结

特征while循环for循环
使用场景不确定循环次数时使用已知迭代次数/遍历集合时使用
条件检查每次迭代前检查条件自动处理迭代次数
典型应用用户输入验证、游戏主循环遍历数据集合、固定次数循环

九、实战练习

练习题:打印菱形图案

使用循环打印如下菱形图案:

    *
   ***
  *****
 *******
  *****
   ***
    *

提示

  1. 使用for循环和range函数
  2. 外层循环控制行数,内层循环控制空格和星号
  3. 注意上下部分的对称性

以下是打印菱形图案的完整代码及其详细解释:

# 定义菱形的高度(上半部分的行数)
height = 4

# 打印上半部分
for i in range(height):  # 遍历每一行
    # 打印空格:每行的空格数为 height - i - 1
    for j in range(height - i - 1):
        print(" ", end="")
    # 打印星号:每行的星号数为 2 * i + 1
    for k in range(2 * i + 1):
        print("*", end="")
    # 换行
    print()

# 打印下半部分
for i in range(height - 2, -1, -1):  # 遍历每一行,从 height-2 到 0
    # 打印空格:每行的空格数为 height - i - 1
    for j in range(height - i - 1):
        print(" ", end="")
    # 打印星号:每行的星号数为 2 * i + 1
    for k in range(2 * i + 1):
        print("*", end="")
    # 换行
    print()

代码运行结果

    *
   ***
  *****
 *******
  *****
   ***
    *

代码解析

  1. 上半部分

    • 外层循环控制行数,从 0height-1
    • 内层第一个循环打印空格,空格数随行数增加而减少。
    • 内层第二个循环打印星号,星号数随行数增加而增加。
  2. 下半部分

    • 外层循环控制行数,从 height-20
    • 内层第一个循环打印空格,空格数随行数减少而增加。
    • 内层第二个循环打印星号,星号数随行数减少而减少。

关键点

  • 空格数height - i - 1,确保星号居中。
  • 星号数2 * i + 1,确保星号数量呈奇数增长。
  • 循环范围:下半部分的循环范围是 range(height - 2, -1, -1),确保对称性。

扩展练习

  1. 修改代码,让用户输入菱形的高度。
  2. 尝试打印空心菱形(只打印边框)。
  3. 使用 while 循环实现相同的功能。

十、总结

通过这篇博文,我们学习了Python中while循环for循环的基本用法,以及如何通过breakcontinue控制循环流程。循环是编程中非常重要的工具,能够帮助我们高效处理重复性任务。希望这篇博文能帮助你更好地理解循环的概念,并在实际编程中灵活运用!

如果你有任何问题或建议,欢迎在评论区留言!让我们一起进步! 🚀

相关文章:

  • 网络安全架构三明治
  • Spring面试题总结
  • 剪映5.9版本——免费字幕识别功能的全能解决方案
  • 2025 聚合易支付完整版PHP网站源码
  • 【算法】acwing算法基础875. 快速幂
  • ArcGIS Pro应用指南:如何为栅格图精确添加坐标信息
  • Rocky Linux 系统安装 typecho 个人博客系统(Docker 方式)
  • 基于SpringBoot的校园二手交易平台(源码+论文+部署教程)
  • TCP的四次挥⼿为什么是四次?为什么不能是三 次
  • Tailwind CSS 问题:npm error could not determine executable to run
  • FFmpeg-chapter3和chapter4-读取视频流(原理篇和实战篇)
  • 点大商城V2-2.6.6.1全能版源码+最新排队免单插件功能
  • Error:java: 错误: 不支持发行版本 14
  • 千峰React:外部库引用
  • SSH监控
  • 深度学习模型与前端结合
  • SimPro - 轻量级协议模拟器
  • [Git]克隆仓库报错warning: remote HEAD refers to nonexistent ref, unable to checkout
  • CAP定理和BASE理论 趣学!
  • Kafka Connect连接器的全生命周期:
  • 沙湾移动网站建设/小程序定制
  • 管理网站怎么做的/网站推广优化教程
  • 益阳营销型网站建设/市场推广策略 包括哪些
  • 平面设计公司名字大全/夫唯seo教程
  • 梧州论坛手机红豆网/搜索引擎seo排名优化
  • 电子商务网站建设与维护pdf/谷歌搜索引擎香港入口