파이썬 가변인자 * 를 사용하는 get_average_score 함수 구현하기
조회수 327회
함수 get_avergae_score()는 가변인자 *를 사용하여 과목에 대한 시험 점수를 입력받은 후 입력받은 과목수와 평균 시험 점수를 반환하는 함수이고 이 함수를 구현할려면 Modify code랑 end of your code 두주석사이에 무슨 코드를 넣어야할지 궁금합니다
def get_avergae_score(*scores):
### Modify code here ###
### End of your code ###
return cnt, average
n, avg = get_avergae_score(95, 100, 90)
print(n, "과목의 평균 점수:", avg, "\n")
n, avg = get_avergae_score(90, 90, 80, 90)
print(n, "과목의 평균 점수:", avg, "\n")
3.과목 평균 점수:95.0
4.과목 평균 점수:87.5
1 답변
-
파이썬 함수 정의에서 파라미터 앞에에
*
혹은**
을 붙이면 가변 인자 리스트가 됩니다.가변 인자 리스트가 무엇이며 어떻게 쓰는 것인지는 아래를 참고하세요:
- https://www.google.com/search?client=firefox-b-d&q=python+variable+length+arguments+list
- https://stackoverflow.com/questions/400739/what-does-asterisk-mean-in-python
이 문제는 가변 인자 리스트, 그러니까 길이를 미리 알수 없는 (배열과 흡사한) 데이터를 반복문을 통해 합산하는 방법과, 동시에 변수 할당과 함수 반환값에 대한 이해를 묻는 문제인 것이죠.
결론적으로
*scores
로 넘겨받은 가변인자들을, 그 길이만큼 반복해서 합산한 후 반복 횟수를cnt
에, 합산값의 평균을average
에 할당하는 코드를 작성하면 됩니다.
댓글 입력