在Python2.3文档的此页底部,它说:
片对象现在有一个方法索引(长度),给定序列的长度,返回一个元组(开始、停止、步骤),可以直接传递给range()
下面是一些测试代码:
s = slice(0, 10) r = range(s.indices(10))
它抛出一个TypeError
TypeError
TypeError: range() integer end argument expected, got tuple.
为什么这个不行?
在我的用例中,range()在图书馆中被调用,我需要提供一个以这种方式使用的slice。
range()
slice
发布于 2015-10-05 00:47:46
试试这个:
r = range(*s.indices(10))
说明:range()需要最多三个整数作为参数,因此我们需要使用splat运算符*解压缩indices()返回的整数元组。
*
indices()
https://stackoverflow.com/questions/32939881
相似问题