컬렉션 자료형 - 2. 튜플 & 딕셔너리

Ⅱ. 튜플 & 딕셔너리

1. 튜플 자료형

 - 한번 저장된 값은 수정할 수 없는 자료형 (읽기 전용의 데이터를 저장할 때 유용하게 사용)

 - ( ) 안에 서로 다른 자료형의 값을 콤마(,)로 구문해 하나 이상 저장할 수 있는 컬렉션 자료형

 - 0부터 시작하는 인덱스를 이용해 접근할 수 있고 한 번 저장된 요소는 변경할 수 없음 

 - ex) 튜플명 = (값1, 값2, 값3, ...)

 

2. 튜플의 인덱싱(Indexing) 및 슬라이싱(Slicing)

- 저장된 데이터를 변경시킬 수 없다는 점만 제외하면 리스트와 완전히 동일함

# Example
a = (10, 20, 30, 40)
print(a[0])             # 10
print(a[-1])            # 40
print(a[1:])            # (20, 30, 40)
print(a[:2])            # (10, 20)

 

3. 딕셔너리 자료형

 - 순서가 없는 컬렉션 자료형

 - 각각의 요소는 Key : Value 형태로 저장

 - Index에 의해 해당 요소를 찾지 않고 Key를 통해 Value를 얻음

 - { }안에 키 : 값 형식의 항목콤마(,)로 구분해 하나 이상 저장할 수 있음

 - 키를 먼저 지정하:(콜론)을 붙여서 값을 표현 (키와 값은 1:1 대응관계)

 - ex) 딕셔너리명 = {key1 : value1, key2 : value2, ...}

# Example
fruit = {1 : '사과', 2 : '딸기'}
print(fruit)		 # {1: '사과', 2: '딸기'}

menu = {'김밥' : 2000, '라면' : 3000}
print(menu)		 # {'김밥': 2000, '라면': 3000}

 

4. 딕셔너리 요소에 접근

 - 딕셔너리를 생성할 때는 중괄호를 사용

 - 딕셔러니 요소에 접근할 때는 딕셔너리 뒤에 대괄호([ ])를 입력하고 내부에 인덱스 대신 키를 입력

# Example
menu = {'김밥' : 2000, '라면' : 3000}
print(menu['김밥'])       # 2000
print(menu['라면'])       # 3000

(menu['라면']) = 3500     # 라면값 변경
print(menu['라면'])       # 3500

 

5. 딕셔너리 조작함수

함수 설명 사용법
get( )  항목접근하기 딕셔너리.get(key)
pop( )
del( )
항목 꺼내고 삭제하기
항목삭제하기
딕셔너리.pop(key)
del(딕셔너리[key])
items( ) 딕셔너리에 저장된 모든 항목 딕셔너리.items( )
keys( ) 딕셔너리에 저장된 키 딕셔너리.keys( )
values( ) 딕셔너리에 저장된 값 딕셔너리.value( )

 - keys( )함수 : 딕셔너리의 들만 모아서 반환

 - values( )함수 : 딕셔너리의 들만 모아서 반환

 - items( )함수 : Key와 Value의 쌍을 튜플로 묶은 값을 반환

# Example
menu = {'김밥' : 2000, '라면' : 3500, '어묵' : 1000}
print(menu.keys())         # dict_keys(['김밥', '라면', '어묵'])
print(menu.values())       # dict_values([2000, 3500, 1000])
print(menu.items())        # dict_items([('김밥', 2000), ('라면', 3500), ('어묵', 1000)])

 

 - get( )함수 : 딕셔너리의 키로 값을 추출하는 기능

    → 딕셔너리[키]와 같은 기능을 수행하지만, 키가 존재하지 않을 경우에는 KeyError를 발생시키지 않음

    → ex) 딕셔너리명.get(값, 존재하지 않을 경우)

# Example
name = {100 : '황복동', 200 : '황채연', 300 : '황나연'}
print(name[100])                    # 황복동
# print[400]                        # (오류발생)

print(name.get(100))                # 황복동
print(name.get(400, 'not Found'))   # not Found

 

 - del( )함수 : 위치한 곳의 키를 제거

    → ex) del(딕셔너리명[키])

 - pop( )함수 : 항목을 꺼내고 제거

    → ex) 딕셔너리명.pop(키)

 

'Programming Language > Python' 카테고리의 다른 글

선택문 - 1. 선택문  (0) 2022.08.17
컬렉션 자료형 - 3. 세트 자료형  (0) 2022.08.15
컬렉션 자료형 - 1. 리스트 자료형  (0) 2022.08.07
기본 자료형  (0) 2022.08.07
입력과 출력  (0) 2022.08.06