변환과 필터가 있는 새 컬렉션을 간결하게 만듭니다.
리스트 컴프리헨션은 반복 가능한 값에서 새 리스트를 만드는 표현식입니다. 앞부분은 결과로 넣을 값, 뒤 for는 반복, 선택적인 if는 필터입니다. 딕셔너리와 집합도 비슷한 형태로 만들 수 있습니다.
numbers는 1부터 10까지의 range이고, 리스트 컴프리헨션은 뒤쪽 if로 짝수 2, 4, 6, 8, 10만 통과시킨 뒤 앞쪽 식으로 각 수를 제곱해 [4, 16, 36, 64, 100]을 만듭니다. 중괄호와 콜론을 쓴 두 번째 식은 딕셔너리 컴프리헨션이라 단어를 키로, len(word)를 값으로 넣어 python: 6, web: 3, data: 4를 만듭니다.
컴프리헨션은 새 컬렉션을 만들며 원본을 바꾸지 않습니다. 중첩이 많거나 부작용이 있으면 일반 반복문이 더 읽기 쉽습니다.
간단한 변환과 필터에만 사용하고 오류 처리나 여러 상태 변경이 필요하면 명시적인 반복문으로 작성합니다.
if가 앞에 있는 조건 표현식과 뒤에 있는 필터의 역할을 혼동하지 마세요.
직접 바꿔보세요홀수의 제곱 목록과 단어 길이 딕셔너리를 만들어보세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.