循环是Python的核心语法,用于重复执行一段代码,新手最容易在“循环条件”“break/continue用法”“循环嵌套”上踩坑,导致死循环、漏执行代码等问题。

今天把Python循环拆解成“for循环、while循环、循环控制、嵌套循环”四个模块,搭配避坑示例,新手看完就能掌握90%的循环场景用法~

一、for循环:遍历可迭代对象(最常用)

1. 核心语法:遍历列表、字符串、字典等可迭代对象,无需手动控制循环次数。

# 语法格式
for 变量 in 可迭代对象:
    循环体(缩进4个空格)
2. 基础示例:

# 1. 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
    print(f"我喜欢吃{fruit}")
# 输出:
# 我喜欢吃苹果
# 我喜欢吃香蕉
# 我喜欢吃橙子

# 2. 遍历数字范围(range()函数)
# range(5) → 0-4(不包含5)
for i in range(5):
    print(i)  # 输出0 1 2 3 4

# range(1, 6) → 1-5(起始1,结束6,不包含6)
for i in range(1, 6):
    print(i)  # 输出1 2 3 4 5

# range(0, 10, 2) → 0,2,4,6,8(步长2)
for i in range(0, 10, 2):
    print(i)

# 3. 遍历字典
user = {"name": "张三", "age": 20}
# 遍历键
for key in user:
    print(key)  # 输出name age
# 遍历键值对
for key, value in user.items():
    print(f"{key}: {value}")
3. 新手避坑:遍历列表时修改原列表

# ❌ 错误示例:循环中删除元素,导致漏值
nums = [1,2,3,4,5]
for num in nums:
    if num % 2 == 0:
        nums.remove(num)
print(nums)  # 预期[1,3,5],实际[1,3,5](看似正确,复杂场景漏值)

# ✅ 正确示例:遍历列表副本
nums = [1,2,3,4,5]
for num in nums[:]:  # nums[:]是列表副本
    if num % 2 == 0:
        nums.remove(num)
print(nums)  # 正确输出[1,3,5]

二、while循环:按条件循环(控制循环次数)

1. 核心语法:只要条件为True,就执行循环体,需手动控制终止条件(避免死循环)。

# 语法格式
while 条件表达式:
    循环体
    (必须有终止条件,如计数器自增)
2. 基础示例:

# 1. 计数器控制循环次数
count = 0
while count < 5:
    print(f"循环第{count+1}次")
    count += 1  # 计数器自增,否则死循环
# 输出:循环第1-5次

# 2. 条件终止循环
num = 10
while num > 0:
    print(num)
    num -= 2  # 每次减2
# 输出:10 8 6 4 2
3. 新手避坑:死循环

# ❌ 错误:无终止条件,死循环(按Ctrl+C终止)
# while True:
#     print("死循环")

# ✅ 正确:加终止条件
flag = True
count = 0
while flag:
    print("循环中...")
    count += 1
    if count >= 3:
        flag = False  # 终止循环

三、循环控制:break/continue(改变循环流程)

1. break:立即终止整个循环

# 遍历列表,找到"香蕉"就终止循环
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
    if fruit == "香蕉":
        print("找到香蕉,终止循环")
        break
    print(fruit)
# 输出:苹果 → 找到香蕉,终止循环
2. continue:跳过当前循环,执行下一次

# 打印1-10的奇数(跳过偶数)
for i in range(1, 11):
    if i % 2 == 0:
        continue  # 跳过偶数
    print(i)  # 输出1 3 5 7 9

四、嵌套循环:循环里套循环(如99乘法表)

1. 核心:外层循环控制行数,内层循环控制列数。

# 示例:打印99乘法表
for i in range(1, 10):  # 外层:行数1-9
    for j in range(1, i+1):  # 内层:列数1-i
        print(f"{j}×{i}={i*j}", end="\t")
    print()  # 换行

最后

循环的核心是“重复执行+可控终止”,新手先掌握for循环(遍历)和while循环(条件)的基础用法,再学习break/continue和嵌套循环。练习时可以尝试用循环实现“猜数字游戏”“累加1-100的和”等小功能,巩固知识点。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐