Python

프로그래머스 Python 오답노트 LEVEL 0. 짝수는 싫어요

datahaseo 2025. 10. 22. 11:29

프로그래머스 Python 오답노트 LEVEL 0. 짝수는 싫어요

<문제>

정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.

 

 

<틀렸던 코드 1>

n=10
a=[]
for i in (1,n+1):
        if i%2 !=0:
            answer=a.append(i)
print(answer)

>> 계쏙 출력값이 None 이라고 나왔음

 

 

<틀렸던 코드 2>

n=10
a=[]
for i in (1,n+1):
        if i%2 !=0:
            answer=sorted(a.append(i))
print(answer)

 

>> None 이 나오다 보니 None 에 대해서는 정렬을 할 수 없다는 오류가 발생했음

TypeError: 'NoneType' object is not iterable

 

 

<틀렸던 이유>

1) 반복문에서 range 가 누락되었음

 

 

 

2) append 함수는 리스트에 추가만 하는 함수이고, 결과는 반환하지 않기 때문에

변수 = a.append() 는 의미가 없음. 바로 a.append 라고 해야함

n=10

a=[]
for i in range(1,n+1):

        if i%2 !=0:
            a.append(i)
print(a)

>> 결과값 [1, 3, 5, 7, 9]

 

 

 

 

 

<정답 코드>

a=[]
def solution(n):
    for i in range(1,n+1):

            if i%2 !=0:
                a.append(i)

    asc = sorted(a)
    return asc