커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 대기중
파이썬 전역변수 지역변수 이해 내용 질문
[스킬업] 실무에 바로 쓰이는 알고리즘 by Python v0
0주차
북마크
이*희
댓글
0
추천
0
조회수
2
조회수
2
답변 대기중

제가 idx 구문 수정 불가능한 이유를 따로 조사해봤는데 맞는지 궁금합니다.


idx = 1


def func() :

idx += 1


func() 내부의 idx += 1은 idx = idx + 1입니다.

내부에서 '변수명 = ' 을 썼다는 건, 변수를 선언했다는 의미인데,

func() 내부에는 idx를 선언한 적이 없으니, 우측의 idx는 외부의 idx임을 알 수 있습니다.

문제는 좌측의 변수명이 전역 변수와 동일해서,

  1. 전역변수 idx = 전역변수 idx + 1 인지,
  2. 지역변수 idx = 전역변수 idx + 1 인지,

파이썬의 인터프리터가 구분을 못해서 오류가 발생하는 게 아닌가 싶습니다.


만일

idx = 1

def func() :

idx = 3


이면 전역변수 idx 1개, 함수 내 지역변수 idx 1개가 개별적으로 존재하니, 에러가 발생하지 않습니다.


제가 이해한 바가 맞나요?

취소
 공유
취소
댓글 0
댓글 알림
나의얼굴