728x90
오늘은 파이썬에서 사용되는 딕셔너리 자료형에 대해서 알아보려고 한다.
딕셔너리란 말 그대로 사전이란 뜻으로 특정 항목에 원하는 데이터가 부합되도록 정의할 수 있는 자료형 중의 하나이다.
C언어로 치면 구조체와 매우 비슷하다고 볼 수 있을 것 같다.
그럼 바로 딕셔너리의 선언 방법을 알아보도록 하자.
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91'}
print("dic: %s" %dic)
################출력 결과################
dic: {'name': 'Seo', 'age': '33', 'birth': '12.03.91'}
위와 같이 { }로 원하는 항목을 감싸주면 된다.
name, age, birth와 같이 앞에 있는 것은 Key라고 정의하고 Seo, 33, 12.03.91은 Value라고 정의한다.
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("dic: %s" %dic)
################출력 결과################
dic: {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking', 'photo', 'game']}
딕셔너리에는 위와 같이 리스트도 추가를 할 수가 있다.
(나의 개인정보가 다 노출되고 있는 순간이다...)
이어서 딕셔너리에 쌍 추가하는 방법에 대해서 알아보자
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
dic['job'] = 'programer'
print("dic: %s" %dic)
################출력 결과################
dic: {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking', 'photo', 'game'], 'job': 'programer'}
위와 같이 추가하고자 하는 key: value 쌍에 대해서 정의를 해주면 딕셔너리 마지막에 추가되는 것을 확인할 수 있다.
다음으로는 key를 삭제하는 방법을 알아보자.
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
del dic['birth']
print("dic: %s" %dic)
################출력 결과################
dic: {'name': 'Seo', 'age': '33', 'hobby': ['hiking', 'photo', 'game']}
del을 입력하고 원하는 key를 입력하면 해당 key가 삭제되는 것을 확인할 수 있다.
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("name: %s" %dic['name'])
print("age: %s" %dic['age'])
print("birth: %s" %dic['birth'])
print("hobby: %s" %dic['hobby'])
################출력 결과################
name: Seo
age: 33
birth: 12.03.91
hobby: ['hiking', 'photo', 'game']
하나의 key의 value만 출력을 하고싶을 때는 위와 같이 사용하면 된다.
딕셔너리의 값을 바꿀 수도 있는데 원하는 key의 value를 변경하면 된다.
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
dic['age'] = '29'
print("age: %s" %dic['age'])
print("age: %s" %dic)
################출력 결과################
age: 29
age: {'name': 'Seo', 'age': '29', 'birth': '12.03.91', 'hobby': ['hiking', 'photo', 'game']}
그럼 딕셔너리의 위치 변경 없이 value가 변경되는 것을 확인할 수 있다.
이제 마지막으로 딕셔너리 관련 함수들을 알아보자.
딕셔너리.keys() - key 리스트 생성
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("dic list: %s" %dic.keys())
################출력 결과################
dic list: dict_keys(['name', 'age', 'birth', 'hobby'])
딕셔너리.values() - value 리스트 생성
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("values list: %s" %dic.values())
################출력 결과################
values list: dict_values(['Seo', '33', '12.03.91', ['hiking', 'photo', 'game']])
딕셔너리.items() - key, value 리스트 생성
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("key, value list: %s" %dic.items())
################출력 결과################
key, value list: dict_items([('name', 'Seo'), ('age', '33'), ('birth', '12.03.91'), ('hobby', ['hiking', 'photo', 'game'])])
딕셔너리.get(Key) - Key로 Value 확인
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
print("name : %s" %dic.get('name'))
################출력 결과################
name : Seo
딕셔너리.clear() - 모든 key: value 쌍 삭제
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
dic.clear()
print("dic : %s" %dic)
################출력 결과################
dic : {}
딕셔너리에서 Key 있는지 확인 방법
dic = {'name': 'Seo', 'age': '33', 'birth': '12.03.91', 'hobby': ['hiking','photo', 'game']}
result = 'age' in dic
print("check age: %s" %result)
result = 'Seo' in dic
print("check Seo: %s" %result)
result = 'job' in dic
print("check job: %s" %result)
################출력 결과################
check age: True
check age: False
check age: False
Key가 있는지 확인은 가능하지만 Value가 있는지에 대해서는 확인이 불가능하다.
728x90
'Python' 카테고리의 다른 글
파이썬에서 bool을 다뤄보기 (0) | 2024.06.14 |
---|---|
파이썬에서 집합과 집합 관련 함수를 다뤄보자 (1) | 2024.06.13 |
파이썬에서 튜플 사용하는 방법과 리스트와의 차이 (0) | 2024.06.10 |
파이썬에서 리스트를 다뤄보자 (0) | 2024.06.08 |
파이썬의 문자열 - 2편(find, rfind, count, strip, replace, split, upper, lower) (1) | 2024.06.08 |