在 python 中创建切片对象
Creating a slice object in python
如果我有一个数组 a
,我知道如何以各种方式对它进行切片。具体来说,要从任意第一个索引切片到数组的末尾,我会做 a[2:]
.
但是我如何创建切片对象来实现相同的目的呢?创建 documented 切片对象的两种方法是 slice(start, stop, step)
和 slice(stop)
。
因此,如果我像在 a[2:]
中那样传递单个参数,slice
对象会将其解释为停止索引而不是起始索引。
问题:如何将索引传递给具有起始索引的slice
对象,并获得一个切片对象,该切片对象一直切片到最后?我不知道列表的总大小。
在任何地方使用 None
基于语法的 slice
使用空白值:
someseq[slice(2, None)]
相当于:
someseq[2:]
类似地,someseq[:10:2]
可以使用由 slice(None, 10, 2)
定义的预构造 slice
,等等
如果我有一个数组 a
,我知道如何以各种方式对它进行切片。具体来说,要从任意第一个索引切片到数组的末尾,我会做 a[2:]
.
但是我如何创建切片对象来实现相同的目的呢?创建 documented 切片对象的两种方法是 slice(start, stop, step)
和 slice(stop)
。
因此,如果我像在 a[2:]
中那样传递单个参数,slice
对象会将其解释为停止索引而不是起始索引。
问题:如何将索引传递给具有起始索引的slice
对象,并获得一个切片对象,该切片对象一直切片到最后?我不知道列表的总大小。
在任何地方使用 None
基于语法的 slice
使用空白值:
someseq[slice(2, None)]
相当于:
someseq[2:]
类似地,someseq[:10:2]
可以使用由 slice(None, 10, 2)
定义的预构造 slice
,等等