이 코드는 a_list와 완전히 분리된 새로운 리스트인 b_list를 만들어 준다. 이 결과는 그림 3-5에서 표현했듯이 내부 리스트와 분리된 복사본이 복사되는 것을 확인할 수 있다.
▲ 그림 3-5 깊은 복사
깊은 복사는 내부 컬렉션까지 확장된다. 컬렉션이 얼마나 복잡하게 여러 단계로 중첩되었는지는 상관없다.
a_list 값을 복사한 b_list에 값이 변경되어도 a_list에 더 이상 영향을 미치지 않는다. a_list의 마지막 항목은 직접 변경하지 않는 한 [5, 10]으로 남을 것이다. 이런 기능을 가능하게 한 깊은 복사 함수에 감사해야 할 것이다.