파이썬의 중첩 함수
코드를 줄이기 위해 함수를 호출할 때 서로 중첩시킬 수 있습니다.
숫자를 제곱하는 함수, 세제곱하는 함수, 그리고 두 숫자를 더하는 함수가 있다고 가정해 봅시다:
def square(num):
return num ** 2
def cube(num):
return num ** 3
def add(num1, num2):
return num1 + num2
숫자의 제곱과 세제곱의 합을 얻기 위해, 함수 add를 호출할 때 그 매개변수 안에 이 함수들을 중첩시킬 수 있습니다:
res = add(square(2), cube(4))
print(res) # 68을 출력합니다
또한, 한 함수의 본문 안에서 다른 함수를 호출할 수도 있습니다. 이전 예제를 다시 작성하여 함수들을 add 내부에서 호출해 보겠습니다:
def add(num1, num2):
return square(num1) + cube(num2)
res = add(2, 4)
print(res) # 68을 출력합니다
숫자를 제곱하는 함수와 숫자의 세제곱을 구하는 함수를 만드세요. 또한 이 함수들을 사용하여 숫자의 제곱의 세제곱을 화면에 출력하는 함수를 만드세요.
변수의 타입을 확인하고, 변수가 문자열인 경우 첫 글자를 대문자로 바꿔 출력하는 함수를 만드세요. 또한 사용자의 이름으로 인사하는 함수를 만드세요. 두 번째 함수 안에 첫 번째 함수를 중첩시켜 이름이 항상 대문자로 시작하도록 하세요.