Python 리스트 특정 값 찾기 3가지 방법

Python의 데이터 타입 list에서 어떤 값을 찾아야 하는 경우가 있죠? Python 리스트 특정 값 찾기 3가지 방법 살펴보겠습니다.

Python 리스트 특정 값 찾기

특정 값이 리스트에 몇 개가 있는지 개수를 확인하는 방법, 리스트에 특정 값이 존재하는지 확인하는 방법, 특정 값이 리스트에서 최초로 몇 번째에 있는지 인덱스를 확인하는 방법, 이렇게 총 3가지 방법을 확인해 봅시다.

특정 값 개수 확인 방법: list.count() 메서드

list.count() 메서드를 사용하면 해당 리스트에 특정 값이 몇 개 있는지 확인할 수 있습니다.

numbers = [1, 2, 5, 4, 5, 6, 5, 8]
print(numbers.count(5))
Python

아래와 같이 5 값이 3개인 것을 확인할 수 있습니다. 반환 값이 0이라면 특정 값이 리스트에 없는 것을 알 수 있습니다.

그림 1. Python 리스트 특정 값 찾기: 개수 확인
그림 1. Python 리스트 특정 값 찾기: 개수 확인

특정 값이 리스트에 있는지만 확인

이번에는 특정 값이 리스트에 몇 개 있는지는 중요하지 않고, 단지 해당 값이 1개라도 들어있는 지 확인하는 방법입니다. 이 방법은 특정 문자열이 들어있는지 확인하는 Python 객체 리스트 정렬 방법 2가지 중 in 활용법과 비슷합니다.

numbers = [1, 2, 3, 4, 5, 6]
print(5 in numbers)
Python

특정 값이 들어있는지 여부만 확인하므로 해당 리스트에 특정 값이 있으면 True, 없으면 False가 반환됩니다.

그림 2. Python 리스트 특정 값 찾기: 존재 여부만 확인
그림 2. Python 리스트 특정 값 찾기: 존재 여부만 확인

리스트 내에서 특정 값의 인덱스 구하기

특정 값이 해당 리스트에서 최초로 어디에서 발견되는지 알아야 할 때에는 list.index() 메서드를 사용할 수 있습니다. index() 메서드에 파라미터로 특정 값을 넘겨주면, 특정 값의 index 값을 돌려줍니다.

numbers = [1, 2, 3, 4, 5, 6]
print(numbers.index(5))
Python

아래 그림과 같이 숫자 5가 리스트 numbers에서 몇 번째 index에 해당하는지 알려줍니다.

그림 3. Python 리스트 특정 값 찾기: 특정 값이 있는 index 구하기
그림 3. Python 리스트 특정 값 찾기: 특정 값이 있는 index 구하기

list.index() 메서드 사용시 없는 값의 인덱스를 찾는 경우에는 ValueError가 발생합니다. 따라서 ValueError가 발생하면 값이 없다는 것을 알 수 있습니다. index() 메서드를 활용해서 값의 유무를 확인하는 간단한 함수를 만들어 보았습니다.

numbers = [1, 2, 3, 4, 5, 6]

def exist_number(items, target):
  try:
    items.index(target)
    return True
  except ValueError:
    return False

exist_number(numbers, 90)
Python

실행한 결과는 아래와 같이 확인할 수 있습니다.

그림 4. Python 리스트 특정 값 찾기: index() 메서드의 예외 활용 방법
그림 4. Python 리스트 특정 값 찾기: index() 메서드의 예외 활용 방법

관련 자료

Python의 Data Structure 문서를 참고했습니다.

같이 읽으면 좋은 글

Leave a Comment