상세 컨텐츠

본문 제목

23. 내부 함수와 Closure

프로그래밍 언어/Python(파이썬)

by 알파고제로 2023. 10. 13. 17:38

본문

■ 내부함수

  • 함수 안에 정의된 다른 함수
  • 코드 중복을 피하기 위해 주로 사용
def outer(a, b):
    def inner(c, d):
		return c + d
    return inner(a, b)
 
print(outer(4, 7))

 

closure란?

  • 함수 안에 정의된 다른 함수
  • 함수 내부의 반복되는 코드를 통합하기 위해 주로 사용
  • 내부함수는 외부에서 호출할 수 없다
def student(saying):
    def inner(quote):
    	return "우리는 '%s' 학생들이다. " %quote
    return inner(saying)

k = student('Master')
print(k)   # 출력 결과는?

def student(saying):
    def inner(kisu):
        return '우리는 %s %s 학생들이다.'%(saying, kisu)
    return inner

scit = student('SCIT')
dima = student('DIMA')
print(scit('44기'))
print(dima('3기'))

'프로그래밍 언어 > Python(파이썬)' 카테고리의 다른 글

24. docstring  (0) 2023.10.17
22. 값으로서의 함수  (0) 2023.10.13
21. 파이썬 Lambda  (0) 2023.10.13

관련글 더보기

댓글 영역