를 계산하고 해시 테이블에 대한 인덱스를 유도함으로써 키의 위치를 바로 알아낼 수 있다. 다만, 일치하는
항목을 찾아내기 위해 몇 번 더 시도해야 할 수는 있다.
●
CPython
3
.
6
dict
의 더 밀집된 메모리 배치
memory
layout
의 영향으로 키 순서가 유지된다(
CPython
3
.
7
부터 공식 기능이 되었다).
●
밀집된 메모리 배치에도 불구하고
dict
의 메모리 사용량은 많을 수밖에 없다. 컨테이너 중 메모리 오버헤
드가 가장 적은 데이터 구조는 항목에 대한 포인터를 담은 배열일 것이다.
9
이에 비해 해시 테이블은 항목
마다 저장할 데이터가 더 많고, 파이썬은 해시 테이블의 효율성을 유지하려면 적어도
1
/
3
정도의 테이블을
비워 놓아야 한다.
●
메모리를 절약하려면
__
init
__()
이외의
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.