“len(A) - 1”是什么意思?

For*_*ras -2 python syntax

来自“Phyton 编程面试要素”第 37 页,这个小程序对整数数组重新排序,使偶数首先出现。

def even_odd(A):
    next_even, next_odd = 0, len(A) - 1
    while next_even < next_odd:
        if A[next_even] % 2 == 0:
            next_even += 1
        else:
            A[next_even], A[next_odd] = A[next_odd], A[next_even]
            next_odd -= 1
Run Code Online (Sandbox Code Playgroud)

我的问题:“len(A) - 1”中的“-1”是什么意思?

小智 5

len(A)-1实际上是 list 中最后一个元素的索引A。与 python(以及几乎所有编程语言)一样,数组索引从 0 开始,因此具有 n 个元素的数组的索引为0, 1, 2, ..., n-1

  • @user 语法“A[-1]”为您提供列表中的最后一个***值***。`len(A)-1` 给你最后一个***索引***。 (2认同)
  • @deceze 是的,这使得这个答案在技术上是正确的。虽然我想知道问题到底是什么。我的意思是,另一个答案是,它是可迭代的长度减 1,或者列表中元素的数量减 1,但问题是:真正的问题是什么。 (2认同)