라일락 꽃이 피는 날

[Python] dictionary (사전) 본문

프로그래밍/Python

[Python] dictionary (사전)

eunki 2021. 6. 1. 19:09
728x90

mapping type : 순서가 유지되는 자료형
- mutation : 변경 가능 자료형  ex) dict-value
- immutation : 변경 불가능 자료형  ex) dict-key
        
사전형에서 사용 가능한 자료형
- value : 모든 자료형 사용 가능 
- key : hashable 자료형 (정수, 실수, 문자열, 튜플)

 

 

 


dictionary (사전)

 

변수명 = {}
변수명 = {key1:value1, key2:value2, ...}
변수명 = dict([(k1, v1), (k2, v2), ...])

값 변경 : dict[key] = value 

dic = {'a':1, 'b':2, 'c':3} 

print(dic['a'])  # 1
dic['c'] = 5 * dic['b'] 
print(dic['c'])  # 10
dic = {'a':1, 'b':2, 'c':3} 

for k in dic: 
    print(k, dic[k])
    
# a 1
# b 2
# c 3
dl = {'음료':['탄산', '과일', '우유', '물'], '식사':['김밥', '라면', '돈까스', '비빔밥']} 

for key in dl: 
    print(dl[key])
    
# ['탄산', '과일', '우유', '물']
# ['김밥', '라면', '돈까스', '비빔밥']
ld = [{'name':'Park', 'age':25, 'blood':'B'}, {'name':'Kim', 'age':27, 'blood':'A'}] 

for dic in ld: 
    print(dic['name'], dic['age'], dic['blood'])
    
# Park 25 B
# Kim 27 A
dd = {'Park':{'age':25, 'blood':'B'}, 'Kim':{'age':27, 'blood':'A'}} 

for name in dd: 
    print(name, dd[name]['age'], dd[name]['blood'])
    
# Park 25 B
# Kim 27 A

 

 

dictionary 함수

 

update(dict) 사전형 자료에 값을 추가
fromkeys(iter, value) 리스트, 튜플에 존재하는 값을 키로 사전형 자료를 생성하여 반환 
get(key, value) 사전형의 키를 통해 값을 반환
keys() 사전형의 모든 키를 반환
values() 사전형의 모든 값을 반환
items() 사전형의 모든 키-값의 쌍을 튜플로 반환
pop(key) 사전형의 키를 통해 값을 반환한 후 삭제
popitem() 사전형의 키-값의 쌍을 튜플로 반환한 후 삭제
clear() 사전형의 모든 키-값을 삭제하여 빈 사전형 자료만 남김 
dic = {'a':1, 'b':2, 'c':3} 

dic.update({'a':4, 'd':5})  # {'a': 4, 'b': 2, 'c': 3, 'd': 5}
k = ['a', 'b', 'c', 'd'] 

dic1, dic2 = {}, {} 
dic1 = dic1.fromkeys(k)  # {'a': None, 'b': None, 'c': None, 'd': None}
dic2 = dic2.fromkeys(k, 1)  # {'a': 1, 'b': 1, 'c': 1, 'd': 1}
dic = {'a':1, 'b':2, 'c':3} 

dic.get('b')  # 2
dic.get('d', 'Not exist key')  # Not exist key
dic = {'a':1, 'b':2, 'c':3} 

for key in dic.keys(): 
    print(key)
    
# a
# b
# c

for value in dic.values(): 
    print(value)
    
# 1
# 2
# 3

for key, value in dic.items(): 
    print(key, value)
    
# a 1
# b 2
# c 3
dic = {'a':1, 'b':2, 'c':3} 

dic.pop('b')  # {'a': 1, 'c': 3}
dic.popitem()  # {'a': 1}
dic.clear()  # {}
728x90

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

[Python] 함수 (def)  (0) 2021.06.04
[Python] String (문자열)  (0) 2021.06.01
[Python] list (리스트)  (0) 2021.05.30
[Python] tuple (튜플)  (0) 2021.05.30
[Python] 반복문  (0) 2021.05.21