공.대.남 2023. 6. 19. 14:38
반응형

 

안녕하세요! 공대남입니다.

 

파이썬에서 깊은 복사를 할때에 크게 deepcopy와 slicing을 이용하는데 둘의 시간복잡도와 뭐가 더 유용한지 알아보겠습니다.

# deepcopy 이용
# time : 6.350424289703369
from copy import deepcopy

list_a = [[i for i in range(100)] for _ in range(100)]
list_b = []
for _ in range(1000):
    list_b = deepcopy(list_a)



# time : 0.049834251403808594
list_a = [[i for i in range(100)] for _ in range(100)]
list_b = []
for _ in range(1000):
    list_b = [item[:] for item in list_a]

 

slicing을 이용하는 것이 100배넘게 빠르다는 것을 확인 할수있습니다.

 

728x90
반응형