Mat*_*yra 37 python list sublist
所以我一直在玩python并注意到一些看起来有些奇怪的东西.-1从列表中选择的语义似乎不一致.
所以我有一个数字列表
ls = range(1000)
Run Code Online (Sandbox Code Playgroud)
当然,列表的最后一个元素,ls[-1]但如果我采用一个子列表,以便从中点到最后得到所有内容我会做
ls[500:-1]
Run Code Online (Sandbox Code Playgroud)
但这并没有给我一个包含列表中最后一个元素的列表,而是一个包含UP到最后一个元素的列表.但是,如果我这样做
ls[0:10]
Run Code Online (Sandbox Code Playgroud)
我得到一个包含第十个元素的列表(因此选择器应该包含在内),为什么它不起作用-1.
我当然可以做ls[500:]或ls[500:len(ls)](这将是愚蠢的).我只是想知道-1的交易是什么,我意识到我不需要它.
mca*_*ane 16
如果要获取包含最后一个元素的子列表,请在冒号后留空:
>>> ll=range(10)
>>> ll
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> ll[5:]
[5, 6, 7, 8, 9]
>>> ll[:]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Run Code Online (Sandbox Code Playgroud)