所以我一直在玩 python 并注意到一些似乎有点奇怪的东西。从列表中选择的语义-1
似乎不一致。
所以我有一个数字列表
ls = range(1000)
如果当然是列表的最后一个元素,ls[-1]
但是如果我采用它的子列表,以便我得到从中点到结尾的所有内容,我会做
ls[500:-1]
但这并没有给我一个包含列表中最后一个元素的列表,而是一个包含直到最后一个元素的所有内容的列表。但是,如果我这样做
ls[0:10]
我得到一个包含第十个元素的列表(因此选择器应该包含在内),为什么它不适用于-1
.
我当然可以做ls[500:]
或ls[500:len(ls)]
(这很愚蠢)。我只是想知道与 -1 的交易是什么,我意识到我在那里不需要它。