반응형
딕셔너리란?
딕셔너리란 파이썬의 하나의 자료형.
- key 와 value 를 갖는 한쌍의 구조다.
- key 중복을 허용하지 않는다.
예를 들어
{ 이름 : 홍길동 }
이런 관계를 갖는 구조다.
이를 딕셔너리(자료형) 라고한다.
동일한 구조는 JSON의 구조를 띄고 있다.
딕셔너리는 어떻게 만들까? |
딕셔너리 추가, 삭제 |
딕셔너리 key 를 사용해 value 얻기 |
key 중복 허용 하지 않음 |
딕셔너리 key 가 있는지 확인 |
반복문을 이용한 딕셔너리 key , value 구하기 |
딕셔너리 관련 함수 |
- 딕셔너리는 어떻게 만들까?
# key : value
dic = {'name':'홍길동', 'phone':'010-0000-0000', 'birth':'1111'}
print(dic)
# >>> {'name': '홍길동', 'phone': '010-0000-0000', 'birth': '1111'}
# 리스트, 튜플, 딕셔너리를 사용
dic = {'name': ['hwang'], 'phone':('010-0000-0000'), 'birth': {'1111'}}
print(dic)
# >>> {'name': ['hwang'], 'phone': '010-0000-0000', 'birth': {'1111'}}
|
- 딕셔너리 추가, 삭제
# 딕셔너리 추가
a = { 'name' :'홍길동'}
a['phone'] = '010-0000-0000'
print(a)
# >>> {'name': '홍길동', 'phone': '010-0000-0000'}
# key 'phone' 삭제
del a['phone']
print(a)
# >>> {'name': '홍길동'}
|
- 딕셔너리 key 를 사용해 value 얻기
딕셔너리는 key를 이용해 value를 얻게 되어있다.
# key를 이용한 value 얻기
a = { 'name' :'홍길동', 'phone': '010-0000-0000'}
print(a['phone'])
# >>> 010-0000-0000
|
- key 중복 허용 하지 않음
# key 중복 허용 안함.
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
print(a)
# >>> {'name': '홍길동', 'phone': '010-0000-0000'}
|
- 딕셔너리 key 가 있는지 확인
# 딕셔너리 에 key 가 있는지 확인
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
print('name' in a)
print('test' in a)
# >>> True
# >>> False
|
- 반복문을 이용한 딕셔너리 key , value 구하기
# 반복문을 이용한 딕셔너리 key , value 구하기
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
# key
for key in a:
print(key)
# value
for key in a:
print(a[key])
|
- 딕셔너리 관련 함수
################################################################
# clear [ 사전에서 모든 항목 제거 ]
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
a.clear()
print(a)
# >>> {}
################################################################
# copy [ 딕셔너리 복사 ]
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
b = a.copy()
print(a)
print(b)
# >>> {'name': '홍길동', 'phone': '010-0000-0000'}
# >>> {'name': '홍길동', 'phone': '010-0000-0000'}
################################################################
# get [key 값으로 value 얻기]
a = { 'name' :'홍길동', 'name' :'홍길동', 'phone': '010-0000-0000'}
print(a.get('name'))
# >>> 홍길동
# key가 없을시 None 반환
print(a.get('birth'))
# >>> None
# key 가 없을시 1111 반환
# key 가 있을시 해당 키의 value 반환
print(a.get('birth','1111'))
# >>> 1111
################################################################
# keys [ 딕셔너리 키값 반환 ]
person = {'name': 'Phill', 'age': 22, 'salary': 3500.0}
# dict_keys 객체로 반환한다.
print(person.keys())
# >>> dict_keys(['name', 'age', 'salary'])
# 리스트로 변환
print(list(person.keys()))
# >>> ['name', 'age', 'salary']
# 튜플로 변환
print(tuple(person.keys()))
# >>> ('name', 'age', 'salary')
################################################################
# # update
# 1. key 있다면 key의 값을 새값으로 업데이트
# 2. key 없다면 추가
a = {1: "one", 2: "three"}
b = {2: "two"}
# key가 있을시
a.update(b)
print(a)
# >>> {1: 'one', 2: 'two'}
# key가 없을시
b = {3: "three"}
a.update(b)
print(a)
# >>> {1: 'one', 2: 'two', 3: 'three'}
################################################################
# values [key 의 values 값 얻기]
sales = { 'apple': 2, 'orange': 3, 'grapes': 4 }
# dict_values 반환
print(sales.values())
# >>> dict_values([2, 3, 4])
# 리스트 변환
print( list(sales.values()) )
# >>> [2, 3, 4]
# 튜플 변환
print( tuple(sales.values()) )
# >>> (2, 3, 4)
################################################################
|
반응형
'python' 카테고리의 다른 글
파이썬 제어문(if) 정리 (0) | 2020.05.25 |
---|---|
파이썬 집합(set) 자료형 정리 (0) | 2020.05.23 |
파이썬 튜플(tuple) 정리 (0) | 2020.05.22 |
파이썬 리스트(list) 관련 함수 정리 (0) | 2020.05.21 |
파이썬 리스트(list) 자료형 (0) | 2020.05.21 |