网络宝典
第二套高阶模板 · 更大气的阅读体验

循环控制使用技巧:让代码更高效的小窍门

发布时间:2025-12-10 09:47:07 阅读:182 次

写程序时,循环是再常见不过的结构。无论是处理一批数据,还是重复执行某个任务,for、while这些循环结构天天见。但很多人只是会用,却没注意怎么用得更聪明。掌握一些循环控制技巧,能让你的代码跑得更快,也更容易维护。

善用 break 跳出循环

当你在一堆数据里找某个目标,一旦找到就没必要继续了。这时候 break 就派上用场。比如在一个名单里查找“张三”,找到了就立刻跳出,省下后面的遍历时间。

names = ["李四", "王五", "张三", "赵六"]
for name in names:
    if name == "张三":
        print("找到了!")
        break

continue 忽略特定情况

有时候你只想处理符合条件的数据,其他跳过。continue 可以跳过当前这轮循环,直接进入下一次。比如处理订单时,跳过已取消的订单。

orders = ["已完成", "进行中", "已取消", "待发货"]
for order in orders:
    if order == "已取消":
        continue
    print(f"需要处理:{order}")

避免在循环里做重复计算

有些操作其实只需要做一次,但被不小心放进了循环。比如获取列表长度、读取配置文件、拼接固定字符串等。把这些移到循环外面,能明显提升效率。

# 错误示范
items = [1,2,3,4,5]
for i in range(len(items)):
    print(items[i])

# 正确做法
items = [1,2,3,4,5]
n = len(items)  # 提前算好
for i in range(n):
    print(items[i])

用 else 配合循环?你可能没见过

Python 的 for 和 while 循环还能跟 else 搭配。只有当循环正常结束(不是被 break 中断)时,else 块才会执行。这个特性适合用来判断是否“走完流程”。

for i in range(3):
    if i == 5:
        print("发现目标")
        break
else:
    print("遍历完了也没找到")

尽量用 for 而不是 while

除非你真的需要复杂的条件控制,否则优先选 for 循环。它更清晰,不容易出错。比如遍历列表、字典、字符串,for 写起来简洁又安全。while 容易因为条件写错导致死循环,调试起来头疼。

利用 enumerate 获取索引

想一边遍历一边知道当前是第几个元素?别自己用计数器变量,用 enumerate 更优雅。

fruits = ["苹果", "香蕉", "橙子"]
for index, fruit in enumerate(fruits):
    print(f"第{index+1}个水果是{fruit}")

提前退出减少资源消耗

在函数中处理大量数据时,尽早判断是否需要继续执行。比如传进来的是空列表,直接 return,别进循环白跑一趟。这种小习惯积少成多,对性能有帮助。

def process_data(data_list):
    if not data_list:
        return
    for item in data_list:
        print(item)