개요
이 튜토리얼에서는 주어진 숫자 K보다 큰 숫자들의 인덱스를 찾는 방법을 알아봅니다. 문제를 해결하는 대표적인 두 가지 방법, 즉 for 루프를 사용하는 방법과 enumerate 함수를 사용하는 방법을 차례대로 살펴보겠습니다.
방법 1: for 루프 사용하기
가장 일반적인 해결 방법은 반복문을 활용하는 것입니다. 단계별로 정리하면 다음과 같습니다.
- 리스트와 기준값 K를 초기화합니다.
- 리스트의 길이만큼 반복하면서 요소를 하나씩 확인합니다.
- K보다 큰 숫자를 발견하면 해당 인덱스를 출력합니다.
예제 코드
# 리스트와 K 초기화
numbers = [3, 4, 5, 23, 12, 10, 16]
K = 10
# 리스트를 순회하며 조건 확인
for i in range(len(numbers)):
# K보다 큰 숫자인지 검사
if numbers[i] > K:
# 해당 인덱스 출력
print(i, end=' ')실행 결과
위 코드를 실행하면 다음과 같은 결과를 얻습니다.
3 4 6
리스트에서 K(10)보다 큰 값은 23, 12, 16이며, 이들은 각각 인덱스 3, 4, 6에 위치해 있습니다.
방법 2: enumerate 함수 사용하기
enumerate 함수를 사용하면 더욱 간결하고 파이썬다운(Pythonic) 코드를 작성할 수 있습니다. enumerate는 각 반복마다 요소의 인덱스와 값을 담은 튜플을 반환하며, 이를 리스트 컴프리헨션과 결합하면 한 줄로 문제를 해결할 수 있습니다.
예제 코드
# 리스트와 K 초기화 numbers = [3, 4, 5, 23, 12, 10, 16] K = 10 # K보다 큰 숫자의 인덱스 추출 result = [index for (index, number) in enumerate(numbers) if number > K] # 결과 출력 print(*result)
실행 결과
위 코드를 실행하면 동일한 결과를 얻습니다.
3 4 6
마무리
지금까지 Python에서 K보다 큰 숫자의 인덱스를 찾는 두 가지 방법을 살펴보았습니다. for 루프 방식은 로직이 직관적이라 초보자에게 적합하고, enumerate + 리스트 컴프리헨션 방식은 코드가 간결하여 실무에서 가독성 좋은 코드를 작성할 때 유용합니다. 상황에 맞게 적절한 방법을 선택해서 사용하시기 바랍니다.
튜토리얼 내용에 대해 궁금한 점이 있다면 댓글로 남겨주세요.