코딩/파이썬(python)

파이썬 배우기 06 - 딕셔너리 자료형

liebero 2023. 10. 3. 17:49

02-5. 딕셔너리 자료형 

  • 딕셔너리는 중괄호’{ }’를 사용하여 만들며, 각 키와 값을 콜론(:)으로 구분
  • Key와 Value를 한 쌍으로 가지는 자료형
  • dic = {‘name’: ‘pey’, ‘phone’: ‘010-9999-1234’, ‘birth’: ‘1118’}

1. 딕셔너리 쌍 추가하기 

dic = {'name':'홍길동'}
dic['전화번호'] = '010-1111-2222'
dic
{'name': '홍길동', '전화번호': '010-1111-2222'}

2. 딕셔너리 요소 삭제하기 

dic = {'name':'홍길동'}
dic['전화번호'] = '010-1111-2222'
dic['주소'] = '**동 **번지'
dic['del'] = 'test'
del dic['del']
dic

3. 딕셔너리에서 Key를 사용해 Value 얻기 

dic = {1:'test'}
dic[2] = 'test2'
dic
{1: 'test', 2: 'test2'}
# 빈 딕셔너리 생성
empty_dict = {}

# 키-값 쌍을 가지는 딕셔너리 생성
a = {
    "이름": "홍길동",
    "나이": 30,
    "직업": "개발자"
}

# 쌍 추가하기
a["취미"] = "놀기"

# 딕셔너리 출력
print("빈 딕셔너리:", empty_dict)
print("샘플 딕셔너리:", a)

# 키를 사용하여 값에 접근
print("이름:", a["이름"])
print("나이:", a["나이"])
print("직업:", a["직업"])

빈 딕셔너리: {}
샘플 딕셔너리: {'이름': '홍길동', '나이': 30, '직업': '개발자', '취미': '놀기'}
이름: 홍길동
나이: 30
직업: 개발자

4. 딕셔너리에서 Key를 사용해 Value 얻기 

sample_dict = {
    "이름": "홍길동",
    "나이": 30,
    "직업": "개발자"
}
sample_dict["이름"]
'홍길동'
a = {1:'a', 2:'b'}
a[1]
'a'

5. 중복값은 앞의 것을 덮어버린다. 

a = {1:'a', 1:'b'}
a
{1: 'b'}

6. Key 리스트 만들기 - keys 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.keys()
dict_keys(['name', 'phone', 'birth'])
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
for k in a.keys():
    print(k)
name
phone
birth
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
list(a.keys())
['name', 'phone', 'birth']

7. Value 리스트 만들기 - values 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.values()
dict_values(['pey', '010-9999-1234', '1118'])

8. Key, Value 쌍 얻기 - items 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.items()
dict_items([('name', 'pey'), ('phone', '010-9999-1234'), ('birth', '1118')])

9. Key: Value 쌍 모두 지우기 - clear 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.clear()
print(a)
{}

10. Key로 Value 얻기 - get 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.get('name')
'pey'
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
print(a.get('nokey'))
None
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
print(a['nokey'])

11. 해당 Key가 딕셔너리 안에 있는지 조사하기 - in 

a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
'name' in a
True
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
'nokey' in a
False