인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

kks99502님의 프로필 이미지
kks99502

작성한 질문수

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

UnboundLocalError에러에 대한 질문입니다.

작성

·

148

1

이미 올라온 질문에 대한 선생님의 링크를 보았습니다.

그리고 이해를 해보았는데 제가 이해한게 맞는지 확인하고 싶어서 질문 드립니다.

def func_v3(a):   

    print(a)

    print(c)

    c = 40

수업시간의 예제입니다.

제가 이해한 바로는

함수가 실행되기 전에 파이썬은 func_v3 함수를 해석하여 c 를 로컬변수(로컬 네임스페이스)로 생각을 한다.

그리고 함수를 실행하는데 print(c) 차례에서 c가 아직 정의되지 않은 상태이기 때문에 UnboundLocalError가 생긴다

그래서 global 키워드를 사용해서 print(c) 이전에 전역변수임을 명시적으로 알려줘야 한다!

 이렇게 결론을 내렸는데 맞는건가요?

항상 좋은 강의 감사드립니다.

답변 1

1

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

네네 맞습니다.

변수의 스코프는 항상 지역 -> 전역 순으로 찾아간다고 생각하시면 됩니다.

kks99502님의 프로필 이미지
kks99502

작성한 질문수

질문하기