더북(TheBook)

이 예시는 리스트-함축 표현식의 두 부분을 잘 보여 주고 있다. 이 표현식이 익숙해지면 굳이 빈칸을 더 추가할 필요가 없다.

b_list = [i for i in a_list]

다른 예시를 살펴보자. a_list의 각 항목의 제곱수를 담는 리스트를 만든다고 가정해 보자.

b_list = [ ]
for i in a_list:
    b_list.append(i * i)

a_list가 [1, 2, 3]을 가지고 있다면 이 코드는 [1, 4, 9]를 담은 리스트를 생성하여 b_list에 대입할 것이다.

똑같이 동작하는 리스트-함축 표현식은 다음과 같다.

b_list = [i * i for i in a_list]

이제 패턴이 보일 것이다. 두 번째 예시의 대괄호 안에 항목들은 다음과 같이 나눌 수 있다.

신규 리스트에 생성될 값을 표현하는 i * i가 위치한다. i * i가 신규 리스트에 추가될 제곱수를 명시한다.

for 문(for i in a_list)으로 연산 처리를 할 값을 차례대로 제공한다. a_list가 값의 출처가 된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.