[python] 조건문에서의 리스트 컴프리헨션 사용하기
파이썬은 리스트 컴프리헨션을 사용하여 간결하고 가독성있는 코드를 작성할 수 있습니다. 리스트 컴프리헨션을 조건문과 함께 사용하면 더욱 강력한 기능을 활용할 수 있습니다.
기본 리스트 컴프리헨션
리스트 컴프리헨션을 사용하여 간단한 예제부터 시작해보겠습니다.
numbers = [1, 2, 3, 4, 5]
squared_numbers = [x**2 for x in numbers]
print(squared_numbers) # 출력: [1, 4, 9, 16, 25]
위 예제에서는 numbers
리스트의 각 요소를 제곱하여 새로운 리스트 squared_numbers
를 생성하였습니다.
조건부 리스트 컴프리헨션
이제 조건문을 추가하여 리스트 컴프리헨션을 더욱 유연하게 활용해보겠습니다.
numbers = [1, 2, 3, 4, 5]
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers) # 출력: [2, 4]
위 예제에서는 numbers
리스트의 요소 중 짝수인 요소만으로 새로운 리스트 even_numbers
를 생성하였습니다.
조건부 표현식 사용하기
리스트 컴프리헨션 내에서 조건부 표현식을 사용하여 좀 더 복잡한 조건을 다룰 수도 있습니다.
numbers = [1, 2, 3, 4, 5]
new_numbers = [x if x % 2 == 0 else x**2 for x in numbers]
print(new_numbers) # 출력: [1, 2, 9, 4, 25]
위 예제에서는 numbers
리스트의 요소가 짝수이면 그대로, 홀수이면 제곱하여 새로운 리스트 new_numbers
를 생성하였습니다.
이처럼 파이썬의 리스트 컴프리헨션은 조건문과 함께 사용하여 다양한 필터링 및 변환 작업을 수행할 수 있습니다.
참고 자료: 파이썬 공식 문서 - 리스트 컴프리헨션