[Python] 파이썬 리스트, 2차원 리스트 깊은 복사(deepcopy) 하는 법
Shallow Copya = [1,2,3,4,5]b = ab[0] = 6print(a) # 6,2,3,4,5print(b) # 6,2,3,4,5 여러분도 이런 상황이 있으셨을겁니다.어떤 리스트의 원소를 바꿨는데 다른 리스트의 원소까지 바뀐 경험이요.이것은 " b=a " 에서 얕은 카피가 일어났기 때문입니다. 이런 상황은 mutable한 객체인 list, set, dict에서 일어나고immutable한 객체인 tuple에서는 일어나지않습니다. 1차원 리스트1차원의 리스트는 슬라이싱(slicing)을 이용하면 됩니다.a = [1,2,3,4,5]b = a[:]b[0] = 6print(a) # 1,2,3,4,5print(b) # 6,2,3,4,5 2차원 리스트2차원의 리스트도 슬라이싱과 리스트 컴프리헨션을 이..
2024. 7. 26.