python data type - Mapping data type
1. 사용되는 클래스 - dict class (dict는 dictionary(사전)을 의미)
2.dictionary는 key(옷장) 와 value(옷)의 쌍으로 데이터를 저장
3.dictionary는 데이터 저장에 대한 순서가 존재하지 않아요!(key을 사용하여 value을 사용)
어떻게 표현하나요??
# 중괄호를 이용해요 : { }
a = { 'name' : '홍길동' , '주소' : '서울', '나이' : 30 } #앞에 있는 게 key 값 뒤에 있는 게 value 중간은 : 을 사용
print(type(a))
# <class 'dict'> (현재 key 와 value 두 개 )
print(a['name'])
# 홍길동 (dic이기 때문에 key 값을 이용해야 함! 숫자 인덱싱 no
dic 은 인덱싱만 적용 슬라이싱 적용 안됨)
print(a['나이'])
# 30
a['취미'] = '기타'
print(a)
# {'name': '홍길동', '주소': '서울', '나이': 30, '취미': '기타'} ( dic에서 key 값이 없으면 새로 추가)
a ={'name': '홍길동', '주소': '서울', '나이': 30, '나이' : 80 }
print(a)
{'name': '홍길동', '주소': '서울', '나이': 80}
똑같은 key 가 두 개 있으면 둘 중 하나는 날립니다. 그래서 이렇게 쓰시면 안 돼요.
키값은 반드시 수정이 안되는 값으로 사용되어야 해요!
a = {[10,20] : 'Hello' } #보기와 같이 키값에 list는 사용할 수 없어요!
# 수정이 안되는 값 Tuple은 키값으로 사용할 수 있어요!
# 일반적으로 문자열을 키값으로 이용합니다.
dictionary와 관련된 함수 3개
#keys( )
a = { 'name' : '홍길동', '주소' : '서울', '나이' : 30 }
print(a.keys()) # dict_keys(['name', '주소', '나이'])
# ['name', '주소' . '나이' ]
list 형태로 키값을 모아 표출.
단 여기서는 순수한 리스트는 아니고 새로운 데이터 타입 list 확장판 개념이에요.
그렇기 때문에 list 와 동일하게 사용할 수 있어요! ( key만 뽑아서 instance 형태로 뽑은 형태)
print(a.values( ))
dict_values(['홍길동', '서울', 30]) (values 값만 뽑아내요)
print(a.items())
dict_items([('name', '홍길동'), ('주소', '서울'), ('나이', 30)]) key와 values 값을 쌍으로 얻을 수 있어요
# key 와 value를 tuple로 만들어서 list 안에 리턴 시켜줌(순차처리가 가능해져요)
'Python' 카테고리의 다른 글
0630 python Bool (0) | 2021.06.30 |
---|---|
0630 - python Set type (0) | 2021.06.30 |
0630 Text Sequence Data Type (0) | 2021.06.30 |
0630 python Tuple (0) | 2021.06.30 |
0630 list (0) | 2021.06.30 |
댓글