1. tuples
- list 같이 데이터들을 저장하게 해주는 것들을 data structure(자료구조)라고 한다.
- tuple은 list와 비슷하게 요소들을 정할 때 쓰이며 한번 선언되면 수정이 불가능하다
my_tuple = (1,2,3)
- tuple의 요소들을 읽어들이는 방법, slicing은 모두 list와 동일하다.
my_tuple[0]
my_tuple[1:2]
- tuple은 일반적으로 2개에서 5개 사이의 요소들을 저장할 때 사용되며 특정 데이터를 adhoc(즉석적으로)하게 표현 하고 싶을 때 사용된다.
2. set
- list와 마찬가지로 여러 다양한 타입의 요소들을 저장할 수 있다.
- list와 다르게 요소들이 순서대로 저장되어 있지 않다. 즉 ordering이 없다.
- 그러므로 for문에서 읽어들일 때 요소들이 순서대로 나오는게 아니라 무작위 순서대로 나온다.
- 순서가 없으므로 indexing도 없다. 몇번쨰 요소를 읽어들이거나 할 수 없다.
- 동일한 값을 가지고 있는 요소가 1개 이상 존재할 수 없다.즉 중복된 값을 저장할 수 없다.
- 만일 새로 저장하려고 하는 요소와 동일한 값의 요소가 존재한다면 새로운 요소가 이 전 요소를 치환한다.
set 생성하는 법
set1={1,2,3}
set2=set({1,2,3})
- set() 함수를 사용해서 set을 만들기 위해서는 리스트를 parameter로 전달해야 한다.
- 그러므로 일반적으로 set() 함수를 사용해서 set를 만드는 경우는 list를 set로 변환하고 싶을 때 사용한다.
- 중복된 값은 저장 되지 않으므로 동일한 값이 1 이상 있다면 맨 나중에 저장되는 요소만 남아있게 된다.
set에서 새로운 요소 추가하기
- set은 요소들이 순차적으로 저장되지 않는다. 그러므로 append(덧붙이다)가 아닌 add라는 함수를 사용해서 새로운 요소를 추가한다.
my_set={1,2,3}
my_set.add(4)
set에서 요소 삭제하기
my_set.remove(3)
Look up
- 어떠한 값이 이미 포함되어 있는지를 알아보는 것을 look up 이라고 한다.
- set에서 look up을 하기 위해서는 in 키워드를 사용해야 한다.
if 1 in my_set:
print(“1 is in the set”)
if 4 not in my_set:
print(“4 is not in th eset”)
intersection(교집합) & union(합집합)
- 교집합은 & 키워드나 intersection 함수를 사용한다
set1={1,2,3,4,5,6}
set2=(4,5,6,7,8,9}
print(set1 & set2)
>{4,5,6}
print(set1.intersection(set2))
>{4,5,6}
- 합집합은 | 키워드 혹은 union 함수를 사용한다.
print(set1 | set2)
>{1,2,3,4,5,6,7,8,9}
print(set1.union(set2))
>{1,2,3,4,5,6,7,8,9}
3. dictionary
my_dic={“key1”=“value1”, “key2”=“value2”}
dictionary에서 요소 읽어들이기
my_dic[“키값”]
- key는 string뿐만 아니라 숫자도 가능하다
- key값은 중복될 수 없다. 이미 존재하는 key값이 또 추가되면 기존의 key값의 요소를 치환하게 된다.
dictionary에서 새로운 요소 추가하기
dictionary_name[new_key] = new_value
dictionary에서 요소 수정하기
my_dic[“four”] = 4
dictionary에서 요소 삭제하기
del my_dic[“one”]