PARA/03_Resources/R001_개발_레퍼런스(참고문서)/알고리즘/리스트 컴프리헨션(List Comprehension).md

리스트 컴프리헨션(List Comprehension)

  • 파이썬의 꽃임
numbers = []
for i in range(5):
    numbers.append(i * 2)
 
numbers = [i * 2 for i in range(5)]
  • 이거 둘이 같은 동작임
  • for루프를 짧게 줄인 표현식 버전임
    • for문을 한줄에 쓰는거임 if문 이런거 아님 for문임
  • 기본구조는 아래와 같음
[ <값을만드는식>  for <변수> in <반복가능객체> ]
  • 다양한 예시
# 조건문
even_numbers = [x for x in range(10) if x % 2 == 0]
 
# 중첩
pairs = [(x, y) for x in [1,2,3] for y in [10,20]]
 
# 리스트 컴프리헨션이 아님
result = [x] if x > 0 else []

댓글

첫 번째 댓글을 남겨보세요.