티스토리 뷰

728x90
자주 사용되고 매우 유용하며 강력한 자료형으로
키(Key)와 값(Value)의 쌍으로 데이터를 저장하는 컨테이너 형태입니다.
 
키를 사용하여 값에 접근하거나 값을 변경할 수 있습니다.

딕셔너리는 중괄호 {}를 사용하여 생성하며, 키와 값은 콜론(:)으로 구분하고
각 키와 값의 쌍은 쉼표(,)로 구분합니다.
 
리스트와 같이 숫자, 문자, 논리 등의 여러개의 자료를 하나의 변수에 저장하고 싶을 때 사용할 수 있지만
리스트와는 다르게 인덱스의 개념이 아닌 키가 사용되고 키는 중복될 수 없습니다.
 
만약.. a라는 키에 1의 값을 입력하고
다시 한번 a라는 키에 2의 값을 입력한다면
먼저 입력된 1이 사라지고 2의 값으로만 저장됩니다.
 
ㅇ 요소 조회하기
dic = { 
    'name': 'ggoreb', 
    'age': 20, 
    'hobby': ['당구', '배드민턴'] 
}
print( dic.get('id') )  # id라는 키가 없으면 None 
print( dic['id'] )  # id라는 키가 없어서 오류 발생!
 
ㅇ 요소 추가하기
dic = { 'a' : 1 }
dic['d'] = '추가'
print(dic)  # {'a': 1, 'd': '추가'}

dic['e'] = ('가', '나')
print(dic)  # {'a': 1, 'd': '추가', 'e': ('가', '나')}

dic[3] = 4
print(dic)  # {'a': 1, 'd': '추가', 'e': ('가', '나'), 3: 4}

dic[(4, )] = 5
print(dic)  # {'a': 1, 'd': '추가', 'e': ('가', '나'), 3: 4, (4,): 5}

dic[True] = 6
print(dic)  # {'a': 1, 'd': '추가', 'e': ('가', '나'), 3: 4, (4,): 5, True: 6}
 
 
ㅇ 요소 수정하기
dic = { 'a' : 1, 'b' : 2, 'c' : 3 }
dic['a'] = '100'
print(dic)  # {'a': '100', 'b': 2, 'c': 3}

dic['b'] = dic['b'] * 2
print(dic)  # {'a': '100', 'b': 4, 'c': 3}

dic.update({'c': 10, 'd': 1000})
print(dic)  # {'a': '100', 'b': 4, 'c': 10, 'd': 1000}​
 
ㅇ 요소 삭제하기
dic = { 'a' : 1, 'b' : 2, 'c' : 3 }

del dic['a']
print(dic)  # {'b': 2, 'c': 3}

dic.clear()
print(dic)  # {}​
 
ㅇ 함수
    1) keys() : key 목록 확인
dic = { 'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5 }

print( dic.keys() )  # dict_keys(['a', 'b', 'c', 'd', 'e'])

for key in dic.keys():
    print(key, dic[key])
'''
a 1
b 2
c 3
d 4
e 5
'''
 
 
     2) values() : value 목록 확인
dic = { 'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5 }

print( dic.values() )  # dict_values([1, 2, 3, 4, 5])

for value in dic.values():
    print(value)
'''
1
2
3
4
5
'''

    3) items() : key, value 목록 확인

dic = { 'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5 }

print( dic.items() )  # dict_items([('a', 1), ('b', 2), ('c', 3), ('d', 4), ('e', 5)])

for key, value in dic.items():
    print(key, value)
'''
a 1
b 2
c 3
d 4
e 5
'''
 
딕셔너리는 매우 유연해서 
데이터를 라벨링하거나, 정보를 검색하는 데 유용하며, 데이터 처리와 관련된 많은 작업에서 활용되는 등
다양한 용도로 사용됩니다.

 

'프로그래밍 > Python' 카테고리의 다른 글

파이썬의 집합(Set) 자료형  (0) 2023.08.02
파이썬의 튜플(Tuple) 자료형  (0) 2023.08.02
파이썬의 리스트(List) 자료형  (0) 2023.08.02
파이썬의 논리 자료형  (0) 2023.07.26
파이썬의 문자 자료형  (0) 2023.07.26