본문 바로가기

TIL 통합/Python

1/23 리스트와 반복문 활용

파이썬 카타

 

문제 9. 짝수의 합 : 리스트와 반복문 활용

정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.

def solution(n):
    sum = 0
    for a in range(0, n+1, 2):
        if a%2 == 0:
            sum = sum+a
    return sum

이전에 풀었던 문제긴 하지만, 잠시 헷갈렸기에 복기.

그리고 더 간단하게 풀 수 있는 방법이 없나 싶어서 일단 작성해보고 다른 정답들을 봐보기로 했다.

 

오답

def solution(n):
    return sum((for i in range(0, n+1, 2))

다른 정답들을 보고서 작성해본 코드. 바로 오답이 났다.

 

정답

def solution(n):
    return sum([i for i in range(0, n+1, 2)])   # 리스트 생성 시, 반복문 앞에 구성요소인 i 언급

*정답 주요 포인트

1)sum은 list에 대한 함수임.

2)반복문으로 리스트를 만들 때 반복문의 구성요소를 반복문 앞에서 따로 언급해주어야 함!