저번시간과 저저번시간을 통해 python의 list에 대해 알아보았다. list와 같이 데이터를 저장하게 해주는 것을 Data Structure(자료구조)라 하는데 python에는 list외에도 여러 자료구조들이 있다. 먼저 tuple에 대해 알아보자
tuple은 list와 마찬가지로 데이터들을 저장할 때 쓰인다. 기본적으로는 list와 동일하지만 차이를 가지고 있는데
이라는 점이다.
tuple을 선언하는 문법은 다음과 같은데
champ = ("가렌", "갈리오", "갱플랭크", "나미", "나서스")
list와의 차이점이라면 대괄호 대신 일반 괄호인 소괄호를 쓴다는 점이다. 이 외의 읽어들이는 방법이라던가 slicing 방법은 list와 동일하다.
그렇다면 tuple은 왜 존재하는걸까? 그러게
tuple은 보통 2~5개 사이의 요소들을 저장할때 사용되고 즉석적으로 표현하고 싶을 때 쓰게 된다. 그래도 궁금증이 해소가 안될텐데 가장 큰 차이는 list와 tuple의 메모리 용량의 차이이다. list가 tuple에 비해 제공하는 기능이 더 많기 때문에 메모리 용량을 많이 잡아먹는 것이다. 따라서 수정이 필요없고 간단한 형태의 데이터를 표현하고 싶을 때 tuple을 이용하는 것이 더 효과적이라고 볼 수 있다 !! (개발자는 효율성이 생명이라 했던가..)
이번엔 다른 자료구조인 set에 대해 알아보고자 한다. set 역시 list, tuple과 마찬가지로 여러 데이터들을 저장하게 되는데, 이 역시 차이점이 없다면 이용할 필요가 없지않은가. set이 list, tuple과의 차이점을 알아보자
차이점을 알아보았으니 set을 생성하는 법을 알아보자
champ = {"가렌", "갈리오", "갱플랭크", "나미", "나서스"}
보다시피 list는 [ ] tuple은 ( ) set은 { } 의 구조를 가지고 있다.
또한 list에서 사용했던 append와 remove 역시 사용가능하다.