Python/포스팅

파이썬 리스트 컴프리헨션

짜집퍼박사(짜박) 2023. 12. 2. 23:32

리스트 컴프리헨션(List Comprehension)은 파이썬에서 간결하게 리스트를 생성하는 방법 중 하나입니다. 리스트 컴프리헨션은 한 줄의 코드로 리스트를 생성하고 각 요소에 특정 연산을 적용할 수 있도록 합니다.

 

기본 구조

[expression for item in iterable if condition]

- expression: 각 요소에 대한 계산식이나 표현식입니다.
- item: 이터러블(iterable)에서 가져온 요소를 나타냅니다.
- iterable: 순회 가능한 객체로, 리스트, 튜플, 문자열 등이 될 수 있습니다.
- condition (선택사항): 조건식으로, 해당 조건이 True인 경우에만 expression을 적용합니다.

 

리스트 컴프리헨션의 예제

 

1. 기본 형태

squares = [x**2 for x in range(5)]
# [0, 1, 4, 9, 16]

이 예제에서는 0부터 4까지의 숫자에 대해 제곱한 값을 리스트로 생성합니다.

 

2. 조건을 포함한 형태

even_squares = [x**2 for x in range(10) if x % 2 == 0]
# [0, 4, 16, 36, 64]

이 예제에서는 0부터 9까지의 숫자 중에서 짝수에 대해 제곱한 값을 리스트로 생성합니다.

 

3. 문자열 조작

words = ["apple", "banana", "cherry"]
capitalized_words = [word.upper() for word in words]
# ['APPLE', 'BANANA', 'CHERRY']

이 예제에서는 문자열 리스트의 각 단어를 대문자로 변환한 값을 리스트로 생성합니다.

 

4. 이중 리스트 컴프리헨션

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened_matrix = [num for row in matrix for num in row]
# [1, 2, 3, 4, 5, 6, 7, 8, 9]

이 예제에서는 이중 리스트를 평탄화(flatten)하여 1차원 리스트로 생성합니다.

리스트 컴프리헨션은 코드를 간결하게 작성할 수 있고, 반복문과 조건문을 한 줄에 표현할 수 있어 가독성이 높아집니다. 그러나 너무 복잡하게 작성되지 않도록 주의해야 합니다.

 

With ChatGPT

'Python > 포스팅' 카테고리의 다른 글

파이썬 함수 매개변수와 인수  (0) 2023.12.03
파이썬 함수  (0) 2023.12.02
파이썬 for문의 range 함수  (0) 2023.12.02
파이썬 for 문과 continue 문  (0) 2023.12.02
파이썬 for문  (0) 2023.12.02