컴퓨터/파이썬팁
python set vs list interation and in funciton speed test
솥단디
2020. 3. 25. 01:25
파이썬에서 set과 list의 속도차이를 알고 싶어 진행한 실험이다.
테스트환경은
CPU : 3900X
RAM : 128GB
이며
간단한 테스트를 위해 python idle환경에서 테스트하였다.
코드는 list와 set에 10억번의 랜덤값을 집어넣은 후
max, min, in을 각각 실행하여 실행시간을 측정하는 방법이다.
코드는 다음과 같다.
대표적으로 iteration을 이용하는 max와 min함수의 실행시간을 측정하였고
탐색함수 in의 실행시간을 측정하였다.
결과는 다음과 같다.
결과는 위를 보면 알 수 있듯이
iteration의 경우 list가 14~16초로 압도적으로 빨랐다.
set의 경우 233초로 매우 긴 시간이 걸림을 확인할 수 있다.
하지만
in 함수의 경우
list는 8초
set은 0초(!!)라는 엄청난 시간차이를 보여준다.
결론
in함수를 많이 사용하는 코드는 set으로
iteration을 많이 사용하는 코드는 list로 짜자.
여담
랜덤한 실수 10억개는
메모리를 100기가나 잡아먹는다....