합격 여부를 저장하는 변수 pass_yn을 추가하고, 80점을 기준으로 조건 충족 여부에 따라 pass_yn에 yes 또는 no를 저장합니다. 그리고 결괏값 반환 부분을 return score, pass_yn으로 변경해 2개의 값을 반환하게 합니다. calculate_score_pass() 함수의 반환값이 2개이므로 이를 저장하는 변수도 2개여야 합니다. 반환값이 환산점수, 합격 여부 순서이므로 stu1_score에는 환산점수가, stu1_pass에는 합격 여부가 저장됩니다. 이처럼 반환값도 여러 개가 될 수 있습니다.
NOTE 튜플
반환값이 여러 개인데, 반환값을 저장하는 변수는 하나라면 어떻게 될까요?
stu1 = calculate_score_pass(99, 80, 72)
print(stu1)
실행결과
(82.5, 'yes')
오류가 발생하지는 않습니다. 다만, 반환값이 소괄호(())로 묶여 나옵니다. 이 책에서는 여러 데이터를 묶어 표현하는 방법으로 총 두 가지를 배웠습니다. 대괄호([])로 묶으면 리스트, 중괄호({})로 묶으면 딕셔너리였죠. 앞의 결과처럼 소괄호로 묶인 데이터 타입은 튜플(tuple)이라고 합니다. 튜플은 리스트와 거의 유사하지만, 제한점이 많아 프로그래밍에서는 리스트가 더 많이 쓰입니다. 여러 개의 반환값을 하나의 변수에 담게 되면 이처럼 결괏값이 튜플로 나타납니다.