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

웨다·2022년 10월 22일
0

Python

목록 보기
2/2

파이썬 List Comprehension(리스트 표현식)

🤔 List Comprehension이란 무엇일까?

List Comprehension(리스트 컴프리헨션)은 기존에 존재하는 리스트를 활용하여 새로운 리스트를 만들고 싶을 때 사용할 수 있는 유용한 문법이다.

예를 들면,

기존 방식

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]
newlist = []

for x in fruits:
	if "a" in x:
    	newlist.append(x)

print(newlist)

# 출력 결과
['apple', 'banana', 'mango']

List Comprehension 사용 시

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if "a" in x]

print(newlist)

# 출력 결과
['apple', 'banana', 'mango']

이처럼 List Comprehension 활용 시, 코드의 간결성을 높일 수 있다.

📌 선수 지식, 파이썬 List의 특징

List Comprehension을 사용하기 위한 사전학습으로 파이썬 List의 특징에 대해 알아보자.

파이썬 리스트의 특징 중 하나는 리스트 안에 반복문 for문과 조건문 if문을 사용할 수 있다는 것이다.

따라서 리스트 안에 '식, for문, if문 등'을 지정하여 새로운 리스트를 생성하는 것을 List Comprehension이라고 한다.

📌 기본 문법

List Comprehension의 기본 문법은 다음과 같다.

newlist = [expression for item in iterable if condition == True]

기본 문법 코드의 동작 순서에 따라 해당 조건들을 하나씩 알아보자.

1) condition

condition은 선택 사항으로 생략할 수 있다.

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if x != "apple"]

print(newlist)

#출력 결과
['banana', 'cherry', 'kiwi', 'mango']

2) iterable

iterable에는 list, tuple, set 등 모든 형식의 객체를 사용할 수 있다.

newlist = [x for x in range(10)]

print(newlist)

#출력 결과
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

3) expression

expression은 item을 반복하여 출력하는 최종 결과 형식을 지정한다.

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x.upper() for x in fruits]

print(newlist)

#출력 결과
['APPLE', 'BANANA', 'CHERRY', 'KIWI', 'MANGO']

📌 List Comprehension의 다양한 한국어 표현

List Comprehension은 '리스트 표현식' 외에도 '리스트 내포, 리스트 내장, 리스트 축약, 리스트 해석' 등 다양한 언어로 표현되므로 구글링 시 참고하자!

profile
인문학도 IT PM✨

0개의 댓글