프로그래밍/python
[python] 배열 복사하기
잇서니
2021. 2. 23. 15:53
반응형
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]
반응형