goodthings4me.tistory.com
리스트 컴프리헨션은 파이썬 리스트를 생성할 수 있는 간단한 방법인데, 대괄호([ ]) 안에 for 루프 반복문이나 조건문을 사용하여 리스트를 생성할 수 있다.
리스트 컴프리헨션(List Comprehenstion)의 기본 형태 및 예제 코드
기본 형태는 [(변수) for (변수) in (시퀀스 등 순회할 수 있는 값)]
## 파이썬 리스트 만들기
int_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
## 리스트 컴프리헨션으로 만들기
intLst = [i for i in range(1, 11)]
print(intLst)
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
evenLst = [i for i in int_lst if i % 2 == 0]
print(even_lst)
# [2, 4, 6, 8, 10]
evenLst2 = [i ** 2 for i in intLst if i % 2 != 0]
print(evenLst2)
# [1, 9, 25, 49, 81]
# 1~ 10까지의 수를 제곱한 리스트
squares = [n**2 for n in range(1, 11)]
# 짝수인 경우, 두 배로 만든 리스트 생성
dbld_evens = [2*n for n in range(1, 10)]
# 문자열의 길이가 4보다 큰 문자를 대문자로 만드는 리스트
words = ['hello', 'world', 'python', 'banana']
uppercase = [word.upper() for word in words if len(word) > 4]
파이썬에서 최고의 효율을 보여주는 리스트 컴프리헨션은
- 루프나 조건문 등의 복잡한 구조의 코드를 간결하고 가독성 있게 해주는 강력한 기능 중 하나이고,
- 함수형 프로그래밍에서 많이 사용되는 파이썬 고급 기능 중 하나이며,
- 빠른 속도를 제공한다.
- 다만, 복잡한 로직인 경우에는 가독성이 떨어지고 한 번에 전체 리스트를 생성하기 때문에 큰 리스트에 사용할 때는 메모리 사용량이 높아질 수 있다.
'코딩 연습 > 파이썬 기초(예제)' 카테고리의 다른 글
파이썬 리스트, 튜플, 딕셔너리, 세트 등에 대해 알아보기 (0) | 2023.12.02 |
---|---|
파이썬 zip(), unzip() 함수 사용 예제 (0) | 2023.04.18 |
파이썬 리스트의 reverse()와 reversed() (0) | 2023.03.26 |
숫자 자릿수 맞추기 (0) | 2023.03.22 |
파이썬에서 인코딩과 디코딩 (0) | 2022.11.18 |
댓글