세트 (Set)
순서가 없고 중복이 없는 객체들의 집합 (non sequence). {} 기호로 정의
- len(), in, not in 정도만 활용 가능
수정이 가능한(mutable) 자료형
수학의 집합을 표현할 때 사용한다
세트 : 세트의 메서드
메서드 | 설명 |
add(x) | 세트에 x를 추가 |
remove(x) | 세트에서 x를 제거. x가 세트에 없으면 오류 발생 |
discard(x) | 세트에서 x를 제거. x가 세트에 없으면 무시 |
update({set}) | 세트에 여러 개의 값을 추가 |
clear() | 세트를 비움 |
세트 : 교집합, 합집합, 차집합
세트(set)는 교집합, 합집합, 차집합을 구하는데 유용하게 사용
튜플(Tuple)
리스트와 거의 비슷하지만 다름 : 시퀀스 자료형
- 튜플은 () 기호로 생성하며 그 값을 바꿀 수 없다(immutable)
- 하나의 요소만을 가질 때는 요소 뒤에 컴마(,)를 반드시 붙임
- 괄호를 생략해도 튜플로 인식
튜플 : packing과 unpacking
Packing : 나열된 객체를 Tuple로 저장하는 것
Unpacking : 튜플, 리스트 안의 객체를 변수로 할당하는 것
튜플 : 확장 unpacking
Unpacking 시 왼쪽 변수가 부족한 경우, 에러가 발생한다(ValueError)
확장 Unpacking에서는 왼쪽 변수가 적은 경우에도 적용할 수 있다 (*)
사전(dict)
순서를 가지지 않는 객체의 집합
Key 기반으로 값을 저장하고 참조하는 매핑형 자료형
시퀀스 자료형이 아니므로 len(), in, not in 정도만 가능
다양한 사전 생성 방법
1
2
3
4
5
6
7
8
9
10
|
d = dict() # empty dict
print(d)
d = dict(one=1, two=2) # keyword arguments
print(d)
d = dict([('one', 1), ('two', 2)]) # tuple list
print(d)
keys = ('one', 'two', 'three')
values = (1, 2, 3)
d = dict(zip(keys, values)) # 키와 값을 별도로 선언 후 합침
print(d)
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs |
사전의 key
사전의 키는 해싱해야 하기 때문에 수정 불가능한 객체여야 한다
예) bool, 수치형(int, float, complex), str, tuple
사전의 메서드
메서드 | 설명 |
keys() | 사전내 키 목록을 dict_keys 객체로 반환 |
values() | 사전내 값 목록을 dict_values 객체로 반환 |
items() | 사전내 키-값 쌍을 튜플로 묶은 dict_items 객체로 반환 |
get(key {, default}) |
사전내 key에 대응하는 값을 반환 default를 지정하면 key에 대응하는 값이 없을 때 default를 반환 |
del dic[key] | dic 사전 내 key에 대응하는 객체를 삭제 |
clear() | 사전을 비움 |
dict_keys, dict_values, dict_items 를 리스트로 사용하려면 list() 함수를 활용
'딥러닝 기반 영상인식 개발 전문가 과정 > C언어, Python, 자료구조' 카테고리의 다른 글
7월 19일 파이썬 순차 자료형(Sequence) 내장 함수, 객체, 함수 (0) | 2019.07.19 |
---|---|
7월18일 파이썬 예제 코드들 (0) | 2019.07.18 |
7월 18일 리스트 (0) | 2019.07.18 |
7월 17일 Python 예제 (0) | 2019.07.18 |
7월 17일 파이썬 수치형, 비트연산자 (0) | 2019.07.17 |