[Python] 참조와 복사

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

댓글 남기기

바로가기