You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python循环中定义range():用len()还是固定值哪个是最佳实践?

Python遍历数组索引的最佳实践

在实现原地排序算法这类需要操作数组索引的场景中,最佳实践是使用for i in range(len(array)):,而非for i in range(6):,原因如下:

  • 可维护性与可读性:硬编码的6属于"魔法数字",后续如果数组长度变更(比如调整为8),必须手动修改这个数值,容易遗漏导致逻辑错误;而len(array)直接关联数组本身,代码意图清晰,一眼就能看出是遍历整个数组的索引。
  • 灵活性:使用len(array)的代码可以适配任意长度的数组,无需修改循环条件,复用性更强。
  • 符合Python核心哲学:这契合PEP 8中"显式优于隐式"的原则,同时也遵循了避免硬编码魔法数字的规范。

权威资料依据

  • PEP 8(Python官方风格指南):明确指出应避免使用无注释的魔法数字,推荐通过与数据结构关联的方式(如len())来推导数值,增强代码的可读性和可维护性。
  • Python官方文档:在range()函数的使用示例中,针对序列索引遍历场景,优先展示了结合len()的写法,作为通用的推荐范式。

内容的提问来源于stack exchange,提问作者spacedustpi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 06:42:02