본문 바로가기
파이썬(Python)/파이썬(Python) 기초

파이썬(Python) 2장 자료형 - 8. 변수

by 인생즐겜러 2022. 7. 1.
728x90
반응형

순서

1. 변수란?

2. 변수의 복사

3. 변수 생성 방법

 

 

 

 

 


 

 

 

 

 

1. 변수란?

자료형의 값을 담는 공간이다.

객체를 가리키는 것이라고도 말할 수 있다.

 

1. 변수의 모양
변수 이름 = 저장할 값



2. 
>>> a = [1, 2, 3]
>>> id(a)
4303029896

 

2.

[1, 2, 3] 값을 가지는 리스트 자료형(객체)이 자동으로 메모리에 생성되고

변수 a는 [1, 2, 3] 리스트가 저장된 메모리의 주소를 가리키게 된다.

id()는 변수가 가리키고 있는 객체의 주소 값을 돌려주는 파이썬 내장 함수.

 

 

 

 

 


 

 

 

 

 

2. 변수의 복사

 

변수끼리의 복사는 같은 대상을 가르키기 때문에 하나의 객체만을 다룬다.

 

>>> a = [1,2,3]
>>> b = a

>>> a[1] = 4
>>> a
[1, 4, 3]
>>> b
[1, 4, 3]

>>> id(a)
2295820253952
>>> id(b)
2295820253952

 

위의 예시에서 확인 가능하듯이 같은 객체의 주소를 반환하는 것을 알 수 있다.

( id() : 그 객체의 고유 주소 값을 반환하는 함수)

 

 

따라서 내용물은 같지만 다른 객체를 만들기 위해서는 다음의 방법들이 필요하다.

 

 

 

 

 

2 - 1. [:] 이용

 

>>> a = [5, 6, 7]
>>> b = a[:]
>>> a[1] = 4
>>> a
[5, 4, 7]
>>> b
[5, 2, 7]



>>> id(a)
2295820253952
>>> id(b)
2295819959232

 

[:]를 이용해 리스트 자체를 전체 복사하면

b는 다른 고유주소를 가진 객체가 되고 b에는 영향이 없음 알 수 있다.

 

 

 

 

 

2 - 2. copy 모듈 이용

 

>>> from copy import copy   # copy 함수를 사용하기 위한 구문
>>> a = [1, 2, 3]
>>> b = copy(a)   # a.copy() 이걸로 사용해도 같음

>>> id(a)
2295820253952
>>> id(b)
2295819959232

 

마찬가지로 리스트 자체를 전체 복사하면

b는 다른 고유주소를 가진 객체가 되고 b에는 영향이 없음 알 수 있다.

 

 

 

 

 


 

 

 

 

 

3. 변수 생성 방법

 

1.
a, b = ('Jin', 'yo')

>>> a
'Jin'
>>> b
'yo'



2. 1번과 동일하다.
(a, b) = 'Jin', 'yo'   # 튜플은 ( ) 생략이 가능하다.
[a,b] = ['Jin', 'yo']

 

728x90
반응형

댓글