Python迭代切片对象

时间:2013-05-20 15:05:31

标签: python iteration slice

如果我有切片对象

s = slice(a,b,c)

和一个数组长度n,是否有一个很好的现成元素迭代器,以便我可以做类似的事情:

for index in FUNCTION_I_WANT(s, n):
    do_whatever(index)

让它表现得像切片一样,超越真正可怕的:

def HACKY_VERSION_OF_FUNCTION_I_WANT(s,n):
    yield range(n).__getitem__(s)

1 个答案:

答案 0 :(得分:13)

def FUNCTION_I_WANT(s, n):
  return range(*s.indices(n))