변수

에스타고어·2023년 4월 28일
0

파이썬

목록 보기
2/3

변수

: 객체의 메모리 주소 값을 가리키는 것

때문에 b = a라고 할 때 b는 a가 가리키는 객체의 값을 복사하는 게 아닌

객체의 메모리 주소 값을 복사한 것이다. 이러한 이유로 어느 하나라도

객체의 값을 바꾸게 되면 나머지 하나도 바뀐 값을 가진 객체를 가리키게 된다.

str = "python"

a = list(str)

b = a

b[0] = "q"

print(a)['q', 'y', 't', 'h', 'o', 'n']

지역변수(local variable) : 함수 내에서 정의된 변수 -> 함수 내에서만 사용 가능

함수가 호출될 때 생성되고 함수가 끝나면 사라지게 된다.

만약 함수 밖에서 함수 호출 없이 지역변수를 부르려고 하면 변수가 정의되지 않았다는 오류 메세지가 뜸

이러한 이유 때문에 특정 A 함수 내의 변수와 또 다른 함수 내의 변수,

그리고 함수 밖의 변수가 이름이 서로 같아도 되는 이유가 이 때문이다.

전역변수(global variable) : 함수 밖에서 정의된 변수 -> 어디서든 사용 가능

만약, 함수 안에서 전역변수와 똑같은 이름의 지역변수를 할당하면 전역변수가 아닌 지역변수가 출력됨

또한 만약, 함수 안에서 전역변수의 값을 직접 수정하거나 사용하려고 할 때는 함수 내부에서

전역변수 앞에 'global' 키워드를 붙여서 선언해야 함

def add_two_num(a, b):

    global result

    print("덧셈중...")

    result = a + b

    return result



result = 0 

add_two_num(10,13) 

print(result)



g_var = "global" # 전역변수 

def func(): l_var = "local" # 지역변수 

    print(l_var) # 지역변수 접근 가능 

    print(g_var) # 전역변수 접근 가능 

print(g_var) # 접근 가능 

# print(l_var) # func()의 지역변수 이므로, func() 외부에서는 없는 변수입니다. error
profile
아직 Newbie

0개의 댓글