查找所有匹配的索引

查找给定列表中满足提供的测试函数的所有元素的索引。

  • 使用enumerate()和列表推导式,返回lst中所有满足fn返回True的元素的索引。
def find_index_of_all(lst, fn):
  return [i for i, x in enumerate(lst) if fn(x)]

find_index_of_all([1, 2, 3, 4], lambda n: n % 2 == 1) # [0, 2]