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

2023. 8. 18. 15:00·Python
반응형

[Python] 리스트 컴프리헨션(List Comprehension)에 대해 학습 후 정리한 포스팅 입니다.

 

이번 포스팅에서는 [Python] 리스트 컴프리헨션(List Comprehension)에 대해 학습합니다.

 

 

 

 

I) 리스트 컴프리헨션(List Comprehension) 이란?

리스트 컴프리헨션(List Comprehension)은 파이썬에서 리스트를 생성하는 간결한 방법 중 하나입니다. 리스트 컴프리헨션은 기존의 for 루프와 append() 메서드를 사용하여 리스트를 생성하는 방식보다 더 간결하고 가독성이 좋은 코드를 작성할 수 있게 해줍니다.

리스트 컴프리헨션이 있음에 너무 감사합니다.
리스트 컴프리헨션을 사용해 리스트 생성을 1줄 코드로 작성할 수 있습니다.

 

 

 

 

 

 

II) 리스트 컴프리헨션의 기본 구조

new_list = [expression for item in iterable if condition]
  • expression: 각 아이템에 대한 처리나 연산을 나타내는 식입니다.
  • item: 이터러블(리스트, 튜플, 집합 등)에서 각 요소를 의미합니다.
  • iterable: 순회 가능한 객체를 나타내며, 리스트 컴프리헨션에서 각 요소가 처리됩니다.
  • condition: (선택사항) 필터링 조건을 정의하는 부분으로, 조건을 만족하는 아이템만 처리됩니다.

 

 

 

 

 

 

III) 리스트 컴프리헨션이 적용된 for 문 vs for 문

1) 0부터 5까지 리스트를 생성하는 코드

# for 문
list = []
for i in range(6):
	list.append(i)

>>> [0, 1, 2, 3, 4, 5)
# 리스트 컴프리헨션이 적용된 for 문
[x for i in range(6)]

>>> [0, 1, 2, 3, 4, 5]

 

  • 리스트는 대괄호를 활용하여 생성한다.

2) Condition이 적용된 리스트 컴프리헨션

1부터 10까지의 숫자 중에서 짝수만 제곱하여 새로운 리스트를 생성하는 코드를 리스트 컴프리헨션으로 작성하면 다음과 같습니다.

even_squared = [x**2 for x in range(1, 11) if x % 2 == 0]

 

 

 

 

 

 

 

ref:

1) 리스트 컴프리헨션

 

1) 리스트 컴프리헨션

## 리스트 생성하기 기존에 배운 문법으로 1부터 10까지 정수를 순서대로 가지고 있는 리스트를 생성하는코드는 다음과 같습니다. ``` numbers = [] for n i…

wikidocs.net

[파이썬 기초] 셋 컴프리헨션

 

[파이썬 기초] 셋 컴프리헨션

파이썬 자료구조인 셋을 컴프리헨션을 이용해 생성해보자. 사용법은 다음과 같다. { 표현식 for 표현식 in 순회가능객체 } 얼핏보면 아래 딕셔너리 컴프리헨션과 형식이 비슷하다. { 표현식 : 표현

dongdongfather.tistory.com

 

 

<Summary>

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

 

 

 

 

*유의사항

- AI 산업기능요원이 공부하여 남긴 정리입니다.

반응형
저작자표시 (새창열림)

'Python' 카테고리의 다른 글

[Python] 문서 자동화 (docx-template)  (1) 2023.09.13
[Numpy] squeeze & unsqueeze - 배열의 모양 변경  (0) 2023.08.19
[screen] Linux 터미널 다중화 도구  (0) 2023.08.17
[tqdm] 진행 상황 표시 모듈  (0) 2023.08.16
[PyTorch] AI 모델 저장 & 불러오기  (0) 2023.08.15
'Python' 카테고리의 다른 글
  • [Python] 문서 자동화 (docx-template)
  • [Numpy] squeeze & unsqueeze - 배열의 모양 변경
  • [screen] Linux 터미널 다중화 도구
  • [tqdm] 진행 상황 표시 모듈
성 언
성 언
AI 학과 3학년 학생이자 RAG 기반 LLM 챗봇 개발 회사에서 근무 중입니다. AI 챗봇 개발과 관련된 기술, 연구, 그리고 실험 과정에서 얻은 인사이트를 공유합니다. 최신 AI 기술을 함께 탐구하며 성장해 나가요!
    반응형
  • 성 언
    AI EON
    성 언
  • 전체
    오늘
    어제
    • AII
      • NLP
      • AI Paper Review
      • MLOps
      • Python
      • Algorithm
      • Memo
      • Server Developer
        • Node.js
        • DataBase&Data Engineering
        • Server Basic
      • MATH
        • Linear Algebra
        • AI
      • etc
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    백준
    파이썬 문서 자동화
    Signature 초격차 패키지
    스택
    [Numpy] squeeze & unsqueeze
    리랭커
    알고리즘
    node.js
    패스트캠퍼스 수강 후기
    비반복 읽기
    NVML
    c++
    umc
    팬텀 읽기
    그리디 알고리즘
    파이썬
    map 함수
    word 자동화
    Ubuntu-20.04 APM 소스 설치
    docx-template
    트랜잭션
    배타 잠금
    더티 쓰기
    transaction
    더티 읽기
    배열의 모양 변경
    reranker
    문서 자동화
    Python
    다중 버전 동시성 제어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
성 언
[Python] 리스트 컴프리헨션(List Comprehension)
상단으로

티스토리툴바