据我所知,使用-1进行索引将为您提供列表中的最后一项,例如
list = 'ABCDEFG'
list[-1]
'G'
但是当你要求列表中的序列时,-1给出列表中的倒数第二个项,
list[3:-1]
'DEF'
为什么?我原以为,并想得到DEFG
最佳答案 这是因为切片表示法的stop(second)参数是独占的,不包括在内.所以,[3:-1]告诉Python从索引3到索引-1,但不包括索引-1.
要得到你想要的,请使用[3:]:
>>> list = 'ABCDEFG'
>>> list[3:]
'DEFG'
>>>
>>> list[3:len(list)] # This is equivalent to doing: list[3:]
'DEFG'
>>>
此外,只是一个未来的注释:将列表用作变量名称被认为是一种不好的做法.这样做掩盖了built-in.