7.3.3 가변 인자 사용하기
찰리와 루시가 2학년이 되면서 더 많은 프로그래밍 언어를 공부했다고 합시다. 다음처럼 찰리는 프로그래밍 언어를 무려 5개나, 루시는 2개를 공부했습니다.
• 찰리 : 파이썬, 자바, C, C++, C#
• 루시 : 코틀린, 스위프트
출력할 내용이 많아졌으니 profile() 함수를 바꿔야 합니다. 프로그래밍 언어를 최대 5개까지 전달받을 수 있다고 가정하고 매개변수 lang1~lang5로 전달값을 받도록 정의합니다. 그리고 print() 문으로 전달값을 출력합니다. 전달값이 많으니 print() 문을 2개로 나눠서 처음에는 이름과 나이만 출력하고 다음에는 프로그래밍 언어를 출력합니다.
def profile(name, age, lang1, lang2, lang3, lang4, lang5):
print("이름 : {0}\t나이 : {1}\t".format(name, age))
print(lang1, lang2, lang3, lang4, lang5)
이제 함수를 호출해 봅시다. 언어를 최대 5개까지 표시할 수 있으니 찰리는 언어 5개를 명시하면 됩니다. 그런데 루시는 언어가 2개뿐입니다. 그래서 나머지 부분은 다음처럼 빈 값으로 채웁니다.
profile("찰리", 20, "파이썬", "자바", "C", "C++", "C#")
profile("루시", 25, "코틀린", "스위프트", "", "", "")
실행결과 |
이름 : 찰리 나이 : 20 파이썬 자바 C C++ C# 이름 : 루시 나이 : 25 코틀린 스위프트 |