首页 > 解决方案 > len(x) 和 len(x)-1 有什么区别?

问题描述

对于这个非常基本的问题,我很抱歉,这是一个我不太理解的概念。

据我了解,Python 列表中的第一个元素具有 index [0]。这意味着它len(x)-1应该是我列表 x 中的最后一个元素。所以,如果我写一个循环:

for i in range(0, len(x)-1):
  #do stuff here

这应该意味着我希望我从列表的第一个元素转到最后一个元素。
但是,我总是发现写着:

for i in range(0, len(x)):
  #do stuff here

这是为什么?哪一个是正确的?

标签: pythonlistfor-looprange

解决方案


range(0,x)将循环到 的值x< x而不是<= x. 例如,range(0, 3)将循环遍历索引0, 1, 2

这意味着第二个是正确的,就像x = [4, 5, 6, 7](len 4) - 最大索引是 3 所以你想遍历索引0, 1, 2, 3


推荐阅读