Python

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

주댕이 2024. 1. 12. 16:57

# 리스트 컴프리헨션(List comprehension)

  • 리스트 내에서 실행할 수 있는 한 줄 for 문
  • 리스트 내에 코드가 내포돼 실행된다.

 

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

[<반복 실행문> for <반복 변수> in <반복 범위>]
# 숫자 제곱하기
# for 문
numbers = [1, 2, 3, 4, 5]
square = []

for i in numbers:
  square.append(i ** 2)

print(square)  # [1, 4, 9, 16, 25]


# 리스트 컴프리헨션
numbers = [1, 2, 3, 4, 5]
square = [i ** 2 for i in numbers]
print(square)  # [1, 4, 9, 16, 25]

 

 

# 조건문을 포함한 리스트 컴프리헨션

[<반복 실행문> for <반복 변수> in <반복 범위> if <조건문>]
  • 반복문을 수행하다가 if <조건문>을 만족하는 경우에만 <반복 실행문>을 실행한다.
# 리스트의 각 항목에서 3 이상의 숫자만 제곱하기
# if 문을 포함한 for 문
numbers = [1, 2, 3, 4, 5]
square = []

for i in numbers:
  if i >= 3:
    square.append(i ** 2)

print(square)  # [9, 16, 25]


# 리스트 컴프리헨션
numbers = [1, 2, 3, 4, 5]
square = [i ** 2 for i in numbers if i >= 3]

print(square)  # [9, 16, 25]

 

728x90

'Python' 카테고리의 다른 글

[Python] 클래스 상속  (0) 2024.01.12
[Python] Docstring  (0) 2024.01.12
[Python] break와 continue  (0) 2024.01.12
[Python] while 문  (0) 2024.01.12
[Python] 시퀀스 자료형(Sequence types)  (2) 2024.01.12