개발계발
리스트 컴프리헨션(List Comprehension) 본문
리스트 컴프리헨션이란?
기존 리스트를 기반으로 새로운 리스트를 만들어내는 구문
예를 들어, 홀수인 경우 2를 곱해 출력할 경우 리스트 컴프리헨셩을 사용하지 않는다면 아래와 같이 코드를 짜야한다.
a = []
for n in range(1, 11):
if n % 2 == 1:
a.append(n*2)
print(a)
위 코드에 리스트 컴프리헨션을 적용하면 아래와 같이 간단하게 작성할 수 있다.
print([n * 2 for n in range(1, 11) if n % 2 == 1])
위 식의 각 부분을 좀 더 개념적으로 정리하자면 아래와 같다.
[expression for item in iterable if condition]
- 'expression' : 각 아이템에 대해 실행되는 표현식
- 'item' : iterable에서 순차적으로 나오는 각 요소
- 'iterable' : 반복 가능한 데이터 컬렉션(리스트, 튜플, 딕셔너리)
- 'condition' : 'expression'을 실행하기 전에 각 아이템에 대해 평가되는 조건
expression의 값을 변수 n을 iterable 범위 안의 condition에 맞을 경우 리스트에 추가
초간단 설명
'파이썬' 카테고리의 다른 글
enumerate() (0) | 2024.04.17 |
---|