리스트, 튜플, 세트의 관계
앞에서 배운 리스트, 튜플, 세트의 관계를 알아보자. 각 자료 구조는 서로 변환될 수 있다. 물론 순서가 있는 자료 구조가 순서가 없는 자료 구조로 되는 경우에는 순서에 대한 정보는 잃어버리게 된다. 다음의 코드에서 세트에서 리스트로, 리스트에서 튜플로, 마지막으로 튜플에서 세트로 변환하는 과정을 살펴보자.
>>> a = set((1, 2, 3)) >>> type(a) set >>> b = list(a) >>> type(b) list >>> c = tuple(b) >>> type(c) tuple >>> d = set(c) >>> type(d) set
리스트, 튜플과 세트의 차이는 바로 값의 순서 유무이다. 리스트, 튜플과 같은 시퀀스 형태의 자료 구조에서 인덱스는 다음 그림 1-25처럼 각 값 위에 붙은 값은 값의 위치 순서를 의미한다. 첫 번째 값이 0부터 시작하는 것에 주의할 필요가 있다. 예를 들어 첫 번째 값은 0 순서에 해당하는 값을 의미하며 이렇게 값을 선택하는 것을 인덱싱(indexing)이라고 한다. 자료 구조 뒤에 [ ]를 통해 사용한다.