프로그래밍을 하다보면 파일 안에 여러개의 함수를 만들기도 한다. 함수 내에서 선언하며 해당 함수 안에서만 존재한다. 함수가 호출되어 실행될 때 만들어지고, 함수의 실행이 끝나면 모두 삭제된다. 함수 밖에서는 해당 변수를 부를 수 없다.
def local_variable_check():
a = 'local'
return a
print(local_variable_check()) # local
print(a) # NameError: name 'a' is not defined
함수 밖에서 선언하며 어디에서든지 접근 가능한 변수이다.
a = [1,2,3]
def plus():
a.append(4)
plust()
print(a) # [1,2,3,4]
함수 안에서 처음 선언된 변수는 지역변수이지만, 해당 변수를 전역변수를 사용하고 싶다면 'global 변수명' 형태로 입력하면 된다.
a = [1,2,3]
def plus2():
a.append(4)
global b # 함수 내에서 전역변수를 선언
b = 'hello world'
c = 50
print(a) # [1,2,3,4]
plus2()
print(b) # hello world
print(c) # NameError: name 'c' is not defined