● ● ● ●
리스트는 배열이요, 배열은 배열이다
파이썬의 리스트는 그 이름이 의미하는 바와 달리 사실 리스트가 아니라 배열로 구현한다. 포워드 포인터(forward pointer)를 사용하지 않기 때문에 이것의 저장공간 역시 마련되어 있지 않다. 규모가 큰 파이썬 리스트가 차지하는 저장공간은 ‘진짜’ numpy 배열에 비해 13% 정도만 클 뿐이다. 하지만 파이썬에서 sum() 함수 같은 내장 연산을 실행할 때 리스트가 배열보다 5~10배 더 빠르다. numpy를 사용하는 프로젝트를 시작하기 전에 먼저 numpy에 특화된 기능들이 정말로 필요한지 스스로 확인해 보자.