본문 바로가기
Python/Function

변수의 영역(scope)

by youngflowey 2019. 11. 26.

영역이 다른것인지!

 

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

'Python > Function' 카테고리의 다른 글

내장함수  (0) 2019.11.26
Function (함수)  (0) 2019.11.26

댓글