一、for 循环

for 循环用于遍历可迭代对象(如列表、字符串、字典、元组、range 等),是 Python 中最常用的循环方式。

基本语法

python

运行

代码语言:TXT

自动换行

AI代码解释

for 变量 in 可迭代对象:
    循环体代码(缩进)
核心示例

#####1. 遍历列表 / 元组

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

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

# 遍历元组
nums = (1, 2, 3)
for num in nums:
    print(num * 2)

#####2. 遍历字符串(按字符)

python

运行

代码语言:TXT

自动换行

AI代码解释

s = "Python"
for char in s:
    print(char.upper())  # 转大写输出:P Y T H O N

#####3. 遍历字典

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

student = {"name": "小明", "age": 18, "score": 90}

# 遍历键(默认)
for key in student:
    print(key)  # name age score

# 遍历键值对
for key, value in student.items():
    print(f"{key}: {value}")

# 遍历值
for value in student.values():
    print(value)

#####4. range () 生成数字序列

range(start, end, step) 生成整数序列(左闭右开),常用于指定循环次数:

  • range(n):0 ~ n-1

  • range(start, end):start ~ end-1

  • range(start, end, step):步长为 step(可负数)

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

# 循环 5 次(0-4)
for i in range(5):
    print(i)  # 0 1 2 3 4

# 1-9(步长 1)
for i in range(1, 10):
    print(i)

# 1-10 偶数(步长 2)
for i in range(2, 11, 2):
    print(i)  # 2 4 6 8 10

# 倒序 10-1
for i in range(10, 0, -1):
    print(i)

二、while 循环

while 循环根据条件判断执行循环体,只要条件为 True,就会持续执行,适合循环次数不确定的场景。

基本语法

python

运行

代码语言:TXT

自动换行

AI代码解释

while 条件表达式:
    循环体代码(缩进)
    # 注意:必须有修改条件的逻辑,否则会无限循环
核心示例

#####1. 基础用法(循环次数确定)

python

运行

代码语言:TXT

自动换行

AI代码解释

# 循环 5 次
count = 0
while count < 5:
    print(f"当前计数:{count}")
    count += 1  # 关键:修改条件变量,避免无限循环

#####2. 无限循环(需配合 break)

python

运行

代码语言:TXT

自动换行

AI代码解释

# 接收用户输入,直到输入 "quit" 退出
while True:
    user_input = input("请输入内容(输入 quit 退出):")
    if user_input == "quit":
        break  # 终止循环
    print(f"你输入了:{user_input}")

#####3. 条件满足时退出

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

# 计算 1+2+...+100
sum_num = 0
i = 1
while i <= 100:
    sum_num += i
    i += 1
print(f"1到100的和:{sum_num}")  # 输出 5050

三、循环控制关键字

1. break:终止整个循环

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

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

python

运行

代码语言:TXT

自动换行

AI代码解释

# 输出 1-10 的奇数
for i in range(1, 11):
    if i % 2 == 0:
        continue  # 偶数跳过
    print(i)  # 1 3 5 7 9
3. else 子句:循环正常结束(未被 break 终止)时执行

python

运行

展开 

代码语言:TXT

自动换行

AI代码解释

# for + else
for i in range(3):
    print(i)
else:
    print("循环正常结束")  # 会执行

# while + else
count = 0
while count < 3:
    print(count)
    count += 1
else:
    print("while 循环正常结束")  # 会执行

# 被 break 终止时,else 不执行
for i in range(3):
    if i == 1:
        break
    print(i)
else:
    print("循环正常结束")  # 不执行

四、嵌套循环

循环内部嵌套另一个循环(for/while 可互相嵌套)。

示例:打印九九乘法表

python

运行

代码语言:TXT

自动换行

AI代码解释

for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j}×{i}={i*j}", end="\t")
    print()  # 换行

五、循环的优化技巧

  1. 尽量使用内置函数 / 生成器:避免手动循环(如 sum()map()filter())。

  2. 减少循环内的计算:把重复计算的逻辑提到循环外。

  3. 使用 enumerate 遍历索引 + 值:python
    运行

    代码语言:TXT

    自动换行

    AI代码解释

    	fruits = ["苹果", "香蕉", "橙子"]
    	for idx, fruit in enumerate(fruits):
    	    print(f"索引 {idx}:{fruit}")  # 0:苹果,1:香蕉,2:橙子
    

总结

循环类型 适用场景 关键点
for 遍历可迭代对象、确定循环次数 依赖可迭代对象,无需手动控次数
while 条件判断、不确定循环次数 必须有条件终止逻辑,避免无限循环


 

Logo

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

更多推荐