输出列表中的负数索引(使用结构递归)

时间:2014-03-09 06:02:56

标签: python recursion

如果给出一个清单:

a = [-1,2,3,4,-5]

如何处理输出否定索引列表的问题?

a.function = [0,4]
编辑:我的错字。

1 个答案:

答案 0 :(得分:3)

my_list = [-1,2,3,4,-5]
print [idx for idx, item in enumerate(my_list) if item < 0]
# [0, 4]

您可以使用递归执行此操作,例如

my_list = [-1,2,3,4,-5]
def rec(current_list, idx, result):
    if len(current_list) == idx:
        return result
    if current_list[idx] < 0:
        result.append(idx)
    return rec(current_list, idx + 1, result)

print rec(my_list, 0, [])
# [0, 4]