파이썬에서 리스트/딕셔너리 복사

in hive-141029 •  2 years ago 

파이썬의 리스트(list)와 딕셔너리(dict)는 등호(=)를 이용해서 다른 변수에 할당할 경우 해당 자료가 복사되지 않고 동일한 데이터에 연결됩니다. 아래의 리스트 예시를 보겠습니다.

x = [1, 2, 3]
y = x

위와 같이 한 상태에서 y의 마지막 원소를 꺼내기 위해 pop()을 사용해 봅니다.

y.pop()

이렇게 하면 x와 y가 동일한 데이터에 연결되어 있기 때문에 x를 출력해도 마지막 원소가 제거된 것을 볼 수 있습니다.

print(x)

[1, 2]

데이터를 복사하여 별도의 리스트를 만들고 싶다면 아래와 같이 copy() 함수를 이용해야 합니다.

y = x.copy()

이렇게 하면 y에서 pop()을 사용해도 x에 저장된 데이터에는 변화가 없습니다.

딕셔너리도 마찬가지입니다. 데이터 자체를 복사해서 하나 더 만들고 싶다면 copy()를 사용합니다.

a = {'name':'john', 'age':20}
b = a.copy()

@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

image.png

Upvoted! Thank you for supporting witness @jswit.
Please check my new project, STEEM.NFT. Thank you!
default.jpg