Page 22 -
P. 22
1.3 EXERCISE 02. 숫자 더하기 o n
P
y
t
h
필자는 학생들에게 문제를 낼 때 파이썬 또는 유닉스 내부에 이미 있는 기능들
을 다시 구현해보라고 하는 편입니다. 이번 예제도 마찬가지입니다. 파이썬 내
부에서 기본적으로 제공하는 sum 함수(http://mng.bz/MdW2)를 구현해보세
2
요. 이 함수는 숫자 시퀀스 를 받고, 내부에 있는 숫자들의 합을 계산한 뒤 리
턴합니다. 예를 들어 sum([1,2,3])을 입력하면 결과로 6이 나옵니다.
이번 예제는 sum 함수와 비슷한 기능을 가진 mysum 함수를 구현하는 것입니
다. 다만 매개변수로 시퀀스 하나를 받지 말고, 여러 개의 숫자를 받게 만
들어주세요. 예를 들어 sum([1,2,3])이 아니라 mysum(1,2,3) 또는 mysum
(10,20,30,40,50)처럼 매개변수를 여러 개 입력할 수 있게 해주세요. 참고로
원래 sum 함수는 두 번째 매개변수를 받을 수 있지만, 이와 관련한 내용은 생략
하겠습니다.
Note 당연하지만 이번 예제를 구현할 때 sum 함수를 사용하면 안 됩니다(필자가 교육
할 때 정말 많은 학생이 이런 형태로 구현하거나, 이렇게 구현하면 안 되는지 묻습니다).
이번 예제에서 중요한 점은 숫자가 아니라 함수의 설계입니다. 매개변수를 어
떻게 해야 할지 중점적으로 생각해보기 바랍니다.
Tip 만약 이번 예제를 어떻게 풀어야 할지 전혀 모르겠다면 http://mng.bz/aR4J에
서 전개 연산자( )를 참고해보기 바랍니다.
*
2 역주 시퀀스란 리스트처럼 순서를 갖고, 인덱스로 요소를 추출할 수 있는 객체를 의미합니다.
038
파이썬_06.indd 38 2021-11-18 오전 9:38:17