모든 일치하는 인덱스 찾기

Beginner

This tutorial is from open-source community. Access the source code

소개

Python 에서 enumerate() 함수를 사용하여 리스트를 반복하고 각 요소의 인덱스와 값을 모두 얻을 수 있습니다. 또한, 리스트 컴프리헨션 (list comprehension) 을 사용하여 특정 조건을 만족하는 요소를 필터링할 수 있습니다. 이 챌린지에서는 이러한 개념을 사용하여 주어진 테스트 함수를 만족하는 리스트 내 모든 요소의 인덱스를 찾는 함수를 만들 것입니다.

모든 일치하는 인덱스 찾기

리스트 lst와 테스트 함수 fn을 인수로 받아 lst 내에서 fnTrue를 반환하는 모든 요소의 인덱스 목록을 반환하는 함수 find_index_of_all(lst, fn)을 작성하십시오.

입력

  • 정수 리스트 lst.
  • 정수를 입력으로 받아 부울 값을 반환하는 테스트 함수 fn.

출력

  • fnTrue를 반환하는 lst 내 모든 요소의 인덱스를 나타내는 정수 리스트.
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]

요약

이 챌린지에서는 enumerate()와 리스트 컴프리헨션 (list comprehension) 을 사용하여 주어진 테스트 함수를 만족하는 리스트 내 모든 요소의 인덱스를 찾는 방법을 배웠습니다. 이제 이 지식을 사용하여 앞으로 유사한 문제를 해결할 수 있습니다.