인프런 커뮤니티 질문&답변

sungkun.jeong님의 프로필 이미지
sungkun.jeong

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

일급함수 - 클로저 심화(3-2)

질문입니다~ closer

작성

·

209

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
def calc():
    a = 3
    b = 5
    def mul_add(x):

        return a * x + b    # 함수 바깥쪽에 있는 지역 변수 a, b를 사용하여 계산
    return mul_add          # mul_add 함수를 반환
 
c = calc()
print(c(1), c(2), c(3), c(4), c(5))
요렇게 쓸때 mul_add함수에서 a,b를 return할때는 또 nonlocal
설정이 불필요하더라구요
이 부분이 좀 이해가 안됩니다!
 

답변 1

1

좋은사람님의 프로필 이미지
좋은사람
지식공유자

네 내부함수(inner)에서 특정 변수의 상태를 유지 시킬 필요가 없으면

nonlocal을 사용하시지 않아도 되여~~~

sungkun.jeong님의 프로필 이미지
sungkun.jeong

작성한 질문수

질문하기