Python官方文档中slice
函数的介绍如下(强调为译者加):
class slice(stop)
class slice(start, stop[, step])
返回一个表示由
range(start, stop, step)
指定的索引集合的切片对象。如果没有传入start
和step
参数,则它们默认为None
。切片对象具有只读数据属性start
、stop
和step
,它们仅返回参数值(或其默认值)。它们没有其他显式功能;但是,NumPy和其他第三方软件包使用它们。当使用扩展索引语法时,也会生成切片对象。例如:a[start:stop:step]
或a[start:stop,i]
。请参阅itertools.islice()
以获取返回迭代器的替代版本。
那么a[start:stop,i]
是什么意思呢?
我在Python 3.6中进行了尝试:
a = [1, 2, 3, 4, 5, 6]
a[1:3,1]
但是却收到了:
TypeError: list indices must be integers or slices, not tuple
a
的不同含义也不同。如果a
是一个列表,那么它是无效的,正如你所看到的。 - mkrieger1