1. 배열이란?

배열(Array)은 여러 개의 값이나 변수들을 묶음 단위로 저장하는 자료구조이다. 배열에는 객체가 저장되며, 배열에 저장된 객체 하나하나를 원소라고 한다. 또한 각 원소는 0,1,2,.. 순으로 인덱스를 부여받는다. 배열은 먼저 크기를 지정하고 해당 크기만큼의 연속된 메모리 공간을 할당받는다. 크기가 고정되어 있으며 한번 생성한 배열은 크기를 변경하는 것이 불가능한데, 실제 데이터에서는 전체 크기를 예상하기 힘들다. 때로는 너무 작은 영역을 할당하여 모자라거나, 때로는 너무 많이 할당하여 낭비될 때도 있다. 따라서 미리 크기를 지정하지 않고 자동으로 리사아징하는 배열인 동적 배열이 등장했다. 파이썬에서는 리스트가 동적 배열 자료형이다.


2. 리스트와 튜플

파이썬에서 배열은 리스트와 튜플로 구현할 수 있다. 리스트와 튜플은 데이터 컨테이너라고 하며, 원소를 변경할 수 있는지 없는지에 따라 차이가 있다. 리스트는 원소를 변경할 수 있는 뮤터블 자료형이다. 튜픙은 우너소에 순서를 매겨 결합한 것으로 원소를 변경할 수 없는 이뮤터블 자료형이다. 자세한 내용은 Python Data Type 를 참고하면 된다.

image

출처: https://velog.io/@2seunghye/%ED%8C%8C%EC%9D%B4%EC%8D%AC%EA%B3%BC-%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0%EB%B0%B0%EC%97%B4