본문 바로가기
DEV/파이썬 이론

파이썬 코딩 :: 리스트 표현식(축약식, 내포, comprehension)

by 올커 2022. 9. 26.

파이썬 리스트 표현식(축약, 내포, comprehension)


1. 리스트 표현식(for 반복문)

 - 리스트 표현식은 리스트 컴프레헨션(comprehension), 리스트 축약, 내포, 내장 등과 같은 용어로 사용되고 있으며, 동일한 의미로 볼 수 있다. 리스트 안에 for 반복문과 if 조건문을 사용하여 여러 줄의 코드를 한줄로 줄일 수 있는 방식이다.

 - 아래와 같이 2가지 식으로 사용할 수 있으나, 성능은 식1과 같이 대괄호 방식을 사용하는 것이 더 좋다.

# 식1
[<식> for <변수명> in <리스트명>]

# 식2
list(<식> for <변수명> in <리스트명>)
# ex 1.
a = [i+1 for i in range(5)]
print(a)

# 출력
[1, 2, 3, 4, 5]

2. 리스트 표현식(if 조건문)

 - 리스트 표현식에서 if 조건문은 for 반복문 뒤에 지정하여 사용할 수 있다.

# 식1
[<식> for <변수명> in <리스트명> if <조건식>]

# 식2
list(<식> for <변수명> in <리스트명> if <조건식>)
# ex 1. if문
a = [i for i in range(5) if i % 2 == 0]
print(a)


# 결과
[0, 2, 4]

 

3. 리스트 표현식 중첩 사용

 - 리스트 표현식은 아래와 같이 중첩하여 사용할 수도 있다.

# 리스트 표현식 중첩 사용
[<식> for <변수명> in <리스트명> if <조건식1>
	  for <변수명> in <리스트명> if <조건식2>
	  ...
	  for <변수명> in <리스트명> if <조건식n>]

 

반응형

댓글