Python/Function
변수의 영역(scope)
youngflowey
2019. 11. 26. 20:59

영역이 다른것인지!
- Global variable
- Local variable
tmp = 100 # global variable
def myFunc(x): # 함수안에서 선언된 변수는 local variable(지역변수)
# 함수안의 변수는 함수안에서만 살아
# 함수 수행이 끝나면 없어진다!
# tmp란 변수 자체가 메모리에서 날라감(일시적)
tmp = 10
tmp += x
return tmp
print(myFunc(20)) # 30
print(tmp) # 100 30(x)

def myFunc(x):
global tmp # 선언 : 100을 10으로 바꾸는것
# tmp를 global에서 찾아서 사용할 거예요!
tmp = 10
tmp += x
return tmp

tmp를 global에서 찾아서 사용할거에요
- 좋지 않은 방법!!!!
- 코드자체가 유기적으로 결합되어있어서 이 함수를 재사용 하기가 힘들어
- 이 함수가 외부코드와 연동이 되어있어서 재사용 불가능
- 함수 사용 목적 : 코드의 재사용
- 프로그램을 디버깅하기가 힘들어짐
- 사용하지 마세요!!!