파이썬 프로그래밍에서 리스트에 포함된 숫자들 중 특정 값(K)보다 큰 요소가 몇 개인지 세는 작업은 다양한 복잡한 문제의 기초가 되는 매우 흔한 과제입니다. 이 글에서는 for 반복문, 리스트 컴프리헨션, sum() 함수를 활용한 세 가지 방법을 예제 코드와 함께 소개합니다.
1. for 반복문 사용하기
가장 기본적인 방법은 for 반복문으로 리스트를 순회하면서 각 요소가 조건을 만족하는지 검사하고, 만족할 때마다 카운트를 1씩 증가시키는 것입니다.
# for 반복문으로 K보다 큰 요소 개수 구하기
# 리스트 초기화
test_list = [1, 7, 5, 6, 3, 8]
# k 값 초기화
k = 4
# 리스트 출력
print("The list : " + str(test_list))
# for 반복문으로 k보다 큰 숫자 세기
count = 0
for i in test_list:
if i > k:
count = count + 1
# 결과 출력
print("The numbers greater than 4 : " + str(count))2. 리스트 컴프리헨션 사용하기
리스트 컴프리헨션을 사용하면 조건을 만족하는 요소만 모아 새 리스트를 만든 뒤, len() 함수로 그 길이를 구해 개수를 바로 얻을 수 있습니다. 코드가 훨씬 간결해진다는 장점이 있습니다.
# 리스트 컴프리헨션으로 K보다 큰 요소 개수 구하기
# 리스트 초기화
test_list = [1, 7, 5, 6, 3, 8]
# k 값 초기화
k = 4
# 리스트 출력
print("The list : " + str(test_list))
# 리스트 컴프리헨션과 len()으로 k보다 큰 숫자 세기
count = len([i for i in test_list if i > k])
# 결과 출력
print("The numbers greater than 4 : " + str(count))3. sum() 함수 사용하기
파이썬에서는 불리언 값 True가 1로 취급되는 성질을 활용할 수 있습니다. sum() 함수와 제너레이터 표현식을 조합하면 단 한 줄로 조건을 만족하는 요소의 개수를 셀 수 있습니다.
# sum() 함수로 K보다 큰 요소 개수 구하기
# 리스트 초기화
test_list = [1, 7, 5, 6, 3, 8]
# k 값 초기화
k = 4
# 리스트 출력
print("The list : " + str(test_list))
# sum() 함수로 k보다 큰 숫자 세기
count = sum(i > k for i in test_list)
# 결과 출력
print("The numbers greater than 4 : " + str(count))실행 결과
세 가지 방법 모두 아래와 같이 동일한 결과를 출력합니다.
The list : [1, 7, 5, 6, 3, 8] The numbers greater than 4 : 4
마무리
리스트에서 특정 값보다 큰 요소의 개수를 세는 세 가지 방법을 살펴봤습니다. 초보자에게는 for 반복문 방식이 로직을 이해하는 데 도움이 되고, 실무에서는 가독성이 좋은 리스트 컴프리헨션이나 더욱 간결한 sum() 함수가 널리 활용됩니다. 코드의 목적과 상황에 맞는 방법을 선택해 사용하시기 바랍니다.