본문 바로가기
프로그래밍/python

[python] 배열 복사하기

by 잇서니 2021. 2. 23.
반응형

 

 

arr = [ [1,1,1], [2,2,2] ]
temp = arr[1]

print(arr[1]) # [2,2,2]

temp[0] = 3

print(arr[1]) # [3,2,2]

arr 배열값을 temp 배열에 할당했다.

그러고 나서 temp 배열값을 변경하였다.

그러면 temp 배열만 바뀔 줄 알았는데 arr 배열값도 같이 바뀐다. 

c++ 에선 arr 배열값이 안바뀔텐데 말이다.

 

arr 배열값을 그대로 유지하려면?

arr = [ [1,1,1], [2,2,2] ]
temp = []

for i in arr[1]:
  temp.append(i)
  
print(arr[1]) # [2,2,2]

temp[0] = 3

print(arr[1]) # [2,2,2]

for 문을 사용하여 temp 배열에 arr 값을 하나씩 할당하면 된다.

 

혹은 copy함수를 사용한다.

arr = [ [1,1,1], [2,2,2] ]
temp = arr[1].copy()

  
print(arr[1]) # [2,2,2]
temp[0] = 3
print(arr[1]) # [2,2,2]

 

 

 

반응형

댓글