본문 바로가기

algorithm

tryhelloworld Lv1. 제일 작은 수 제거하기

@마크다운


```

rm_small함수는 list타입 변수 mylist을 매개변수로 입력받습니다.
mylist 에서 가장 작은 수를 제거한 리스트를 리턴하고, mylist의 원소가 1개 이하인 경우는 []를 리턴하는 함수를 완성하세요.
예를들어 mylist가 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10, 8, 22]면 [10, 22]를 리턴 합니다.

```



내가 푼 코드


```

def rm_small(mylist):

    mylist.remove(min(mylist))

    return mylist



# 아래는 테스트로 출력해 보기 위한 코드입니다.

my_list = [4, 3, 2, 1]

print("결과 {} ".format(rm_small(my_list)))


```


풀이 :


고맙게도 함수명에 rm이라고 떡하니 적혀있다.

그리고 리턴값은 리스트형식이라는 조건 또한 주어져있다.


지금 와서보니 이 코드에 문제가 있다.

mylist에 값이 빈리스트로 왔을 때 문제가 생긴다.


그래서 


```


def rm_small(mylist):

    try:

    mylist.remove(min(mylist))

    except:

        mylist = []

    return mylist

```

예외처리문을 사용했다.

정석적인 방법은 아닌것 같지만.. 문제를 찾았다는점과 문제를 해결했다는점에 만족한다.