파이썬은 반복문을 사용하여 리스트, 집합, 딕셔너리등을 생성하거나 변환하는 간결하고
효율적인 방법을 제공하는데 오늘은 이 방법 중 하나인 컴프리헨션을 알아보도록 하겠습니다!
1. 컴프리헨션의 정의? 컴프리헨션이란?
컴프리헨션은 파이썬에서 리스트, 집합, 딕셔너리 등의 시퀀스 데이터를 생성하거나 변환하는데 사용되는 구문입니다.
2. 컴프리헨션을 쓰는 이유는?
컴프리헨션은 기존의 반복문을 간결하게 표현하여 코드의 가독성을 향상시키고, 동시에 실행속도를 향상 시킬 수 있는 장점을 제공합니다.
3. 구문 작성 방법, 컴프리헨션 작성법
1 ) 리스트 컴프리헨션(List Comprehension)
컴프리헨션이 가장 많이 사용되는 부분이 바로 리스트 컴프리헨션입니다. 예제를 통해 알아보도록 하겠습니다!
기본 예제
new_list = [expression for item in iterable if condition]
- expression: 각 항목을 변환하거나 생성하기 위한 표현식(expression).
- item: 반복되는 항목.
- iterable: 반복 가능한 객체(리스트, 튜플 등).
- condition (선택사항): 조건식을 지정하여 특정 조건에 맞는 항목만 처리할 수 있습니다.
기본 예제를 통한 실 예제 1 : 1부터 10까지의 제곱값으로 구성된 리스트 생성
squares = [x ** 2 for x in range(1, 11)]
print(squares)
기본 예제를 통한 실 예제 2 : 1부터 10까지의 숫자중 짝수의 제곱값으로만 구성된 리스트 생성
even_squares = [x ** 2 for x in range(1, 11) if x % 2 == 0]
print(even_squares)
2) 집합 컴프리헨션(Set Comprehension)
동일하게 제곱값으로 구성된 집합의 예제입니다. 집합의 경우 { } 기호를 사용합니다.
even_squares_set = {x ** 2 for x in range(1, 11) if x % 2 == 0}
print(even_squares_set)
3) 딕셔너리 컴프리헨션(Dictionary Comprehension)
동일하게 제곱값으로 구성된 딕셔너리 예제입니다. 키와 벨류로 구성되게 작성합니다. 이 경우에도 { } 기호를 사용합니다.
square_dict = {x: x ** 2 for x in range(1, 11)}
print(square_dict)
이처럼 컴프리헨션을 사용하면 간결하고 효율적인 코드를 작성할 수 있습니다.
주의해야 할 점은 컴프리헨션 사용시 제네레이터 표현식과 혼동하시면 안된다는 점입니다.
https://vipdeveloper.tistory.com/121
파이썬 효율적인 데이터 처리 : 제너레이터(generator)이란?
오늘은 지난 글에 이어 효율적인 데이터 처리 기술중 하나인 제너레이터에 대하여 알아보도록 하겠습니다. 1. 제너레이터란?(generator) 제네레이터(generator)는 이터레이터(iterator)를 생성해주는 기
vipdeveloper.tistory.com
'파이썬(python) 기본' 카테고리의 다른 글
파이썬 파일 다루기: 입출력과 파일 처리 기초 (0) | 2023.08.16 |
---|---|
파이썬 내장 함수, 표준 라이브러리: 다양한 내장 함수와 라이브러리 (0) | 2023.08.14 |
파이썬 예외: 파이썬의 예외 처리 메커니즘 (0) | 2023.08.07 |
파이썬 기초: 모듈과 패키지 개념 (0) | 2023.08.07 |
파이썬 효율적인 데이터 처리 : 제너레이터(generator)이란? 제너레이터 표현식 (0) | 2023.08.02 |