변수의 유효 범위(variable scope)

변수가 선언된 위치에 따라 해당 변수가 영향을 미치는 범위

전역변수

지역변수란?

hi = 1

def test():
    hi = 2

test()
print(hi)
# 1
def test():
    test_val = 2

test()
print(test_val)
# NameError: name 'test_val' is not defined

전역변수 예시

global hi
hi = 1

def test():
    global hi
    hi = 2

test()
print(hi)
# 2
def test():
    global hi
    hi = 2

test()
print(hi)
# 2
global_test_val = 1
def test():
    global global_test_val
    global_test_val = 2

test()
print(global_test_val)

참고
[1] http://www.tcpschool.com/python2018/python_function_scope