오늘의 인기 글
최근 글
최근 댓글
Today
Total
11-08 00:42
관리 메뉴

우노

[Python] 깊은 복사 본문

Language/Python

[Python] 깊은 복사

운호(Noah) 2022. 9. 8. 18:05

들어가기 앞서,

  • PS를 진행하다보면, 깊은 복사를 해야하는 경우가 있습니다.
  • Python에선, deepcopy 또는 slicing을 사용해 깊은 복사를 진행할 수 있습니다.
  • 해당 포스팅에선, slicing과 deepcopy를 사용한 깊은 복사 방법을 다뤄보겠습니다.
  • 속도는 slicing이 deepcopy보다 빠릅니다.

1차원 리스트의 깊은 복사

  • slicing 사용

      a = [1, 2, 3]
    
      b = a[:]
  • deepcopy 사용

      from copy import deepcopy
    
      a = [1, 2, 3]
    
      b = deepcopy(a)

2차원 리스트의 깊은 복사

  • slicing 사용

      a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
    
      b = [row[:] for row in a]
  • deepcopy 사용

      from copy import deepcopy
    
      a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
    
      b = deepcopy(a)
Comments