본문 바로가기
프로그래밍 기초/Python

[Python] 참조와 복사

by ITPro 2016. 3. 13.

import copy


a=[1,2,[3,4]]


##참조 (c의 포인터와 유사)

b=a


b[1]=5

print a   #a도 변경됨

print b


##얕은 복사

c=list(a)


c.append(5)

print a     #a에는 원소가 추가되지 않음

print c

c[2][1]=44

print a     #기존 원소의 객체는 변경됨

print c


##깊은 복사

d=copy.deepcopy(a)


d[2][1]=999

print a     #변경되지 않음

print d

반응형

'프로그래밍 기초 > Python' 카테고리의 다른 글

[Python] 모듈화  (0) 2016.03.13
[Python] 클래스  (0) 2016.03.13
[Python] 코루틴  (0) 2016.03.13
[Python] 예외처리  (0) 2016.03.08
[Python] 생성기  (0) 2016.03.08