ETC/Python
[Python] Python 은 Global Scope 영역 변수의 값을 Local Scope 에서 변경하지 못한다.
WooGong Peter
2018. 1. 15. 15:58
재미있네요.
Python 을 좀 보고 있는데요.
글 제목 처럼 Python 에서는 Global Scope 에 있는 변수의 값을 Local Scope 의 코드에서 변경할 수 없대요.
n = 1
print('Return value of n : ' + str(n))
def func1(g):
return g + n
print('Return value of func1 : ' + str(func1(1)))
def func2(h):
n = 2
return h + n
print('Return value of func2 : ' + str(func2(1)))
print('Return value of n : ' + str(n))
이 녀석들의 결과 값은...
Return value of n : 1
Return value of func1 : 2
Return value of func2 : 3
Return value of n : 1
이렇습니다. ^^;
다른 언어와는 좀 다르네요.
Global Scope 변수의 값을 변경 하려면 이렇게 해야겠네요.
n = 1
print('Return value of n : ' + str(n))
def func3(h):
n = 2
return h + n , n
return_value = func3(5)
print('Return value of func3 : ' + str(return_value[0]))
n = return_value[1]
print('Return value of n : ' + str(n))
이렇게 하면...
Return value of n : 1
Return value of func3 : 7
Return value of n : 2
요렇게 나옵니다. ^^
재밌다고 해야할까요? 여튼 새로운 사실을 하나 알았네요...
행복한 고수되셔요... ^^
woojja ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
반응형