Menu
Coddy logo textTech

조건 추가하기

Coddy Python 여정의 Logic & Flow 섹션에 포함된 레슨 — 78개 중 52번째.

리스트 컴프리헨션(List comprehensions)은 조건부 로직을 추가할 때 더욱 강력해집니다. 이를 통해 기존 리스트를 기반으로 새로운 리스트를 생성하고, 지정된 조건에 따라 요소를 필터링하거나 변형할 수 있습니다.

리스트 컴프리헨션에 조건을 추가하는 구문은 다음과 같습니다:

new_list = [expression for item in iterable if condition]

구문에 대한 설명은 다음과 같습니다:

  • new_list: 생성될 새로운 리스트입니다.
  • expression: new_list에 포함될 값입니다. 이것은 item의 수정된 버전일 수 있습니다.
  • for item in iterable: iterable(예: 리스트, 튜플 또는 범위)의 각 요소를 반복하는 루프입니다.
  • item: 루프에서 처리 중인 현재 요소입니다.
  • if condition: 현재 itemnew_list에 포함되어야 하는지를 결정하는 필터입니다. conditionTrue인 경우에만 expression이 평가됩니다.

다음은 예시입니다:

numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# 출력: [2, 4, 6]

이 예제에서 리스트 컴프리헨션은 numbers 리스트에서 각 요소 n을 가져와 짝수인 경우에만(즉, n % 2 == 0) 포함하여 evens라는 새로운 리스트를 생성합니다.

challenge icon

챌린지

쉬움

filter_and_square라는 이름의 함수를 작성하세요. 이 함수는 숫자 리스트인 numbers를 인자로 받습니다. 이 함수는 리스트 컴프리헨션을 사용하여 원본 리스트의 숫자 중 양수만을 제곱한 값들로 구성된 새 리스트를 생성해야 합니다. 함수는 이 새 리스트를 반환해야 합니다.

치트 시트

조건부 로직을 사용한 리스트 컴프리헨션(List comprehensions)을 사용하면 지정된 조건에 따라 요소를 필터링하고 변환할 수 있습니다:

new_list = [expression for item in iterable if condition]
  • expression: 새 리스트에 포함될 값
  • for item in iterable: 각 요소를 반복
  • if condition: 항목 포함 여부를 결정하는 필터

예제 - 짝수 필터링:

numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# 출력: [2, 4, 6]

직접 해보기

def filter_and_square(numbers):
    # 여기에 코드를 작성하세요
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Logic & Flow의 모든 레슨