Programming/Python

[Python] 리스트 컴프리헨션 (List Comprehension)

Denali 2021. 1. 1. 22:49

리스트 컴프리헨션은 반복되거나 특정 조건을 만족하는 리스트를 보다 쉽게 만들어 내기 위한 방법이다.

 

1. 리스트 컴프리헨션 기본 구조

r1 = [1, 2, 3, 4, 5]
r2 = [x * 2 for x in r1]

r2
[2, 4, 6, 8, 10]

2. if절이 추가된 리스트 컴프리헨션

r1 = [1, 2, 3, 4, 5]
r2 = [x * 2 for x in r1 if x % 2]

r2
[2, 6, 10]

3. 중첩된 for 루프 형태의 리스트 컴프리헨션

# ex1
r1 = ['Black', 'White']
r2 = ['Red', 'Blue', 'Green']
r3 = [t + p for t in r1 for p in r2]

r3
['BlackRed', 'BlackBlue', 'BlackGreen', 'WhiteRed', 'WhiteBlue', 'WhiteGreen']


# ex2
r = [n * m for n in range(2, 10) for m in range(1, 10) if (n * m) % 2]

r
[3, 9, 15, 21, 27, 5, 15, 25, 35, 45, 7, 21, 35, 49, 63, 9, 27, 45, 63, 81]