4. 삭제하기
d2 = {'a':10, 'b':10, 'c':3, 'd':4, 'e':50, 'f':100}
- 하나의 아이템 삭제하기 : del 키워드 + 딕셔너리 인덱싱
- 단, .get()을 이용한 삭제는 불가능하다
d2
del d2['d'] # del d2.get('d')로는 동작하지 않는다
d2
- 딕셔너리 통째로 비우기 : 딕셔너리.clear()
- .clear()는 빈 딕셔너리를 남긴다
- del은 딕셔너리 자체를 파기(상자도 사라짐)
d2.clear()
d2
- 주의 : del 키워드로 변수 삭제시 통째로 자료가 날아감(빈 딕셔너리도 없음)
del d2
d2
5. 딕셔너리 내장함수 & 관련 연산자
딕셔너리타입.keys()
딕셔너리타입.values()
딕셔너리타입.items()
in 연산자
-
.keys()
-
딕셔너리가 가지고 있는 key만 리스트 형식으로 반환
d1 = {'name':'홍길동', 'age':'18', 'job':'학생'}
d1.keys()
(유사리스트, 리스트는 아니지만 유사하게 기능함)
-
리스트로 교환이 쉽습니다.(자료형 변환)
list(d1.keys())
- .values()
- 딕셔너리가 가지고 있는 value만 리스트 형식으로 변환
d1.values()
- .items()
- 딕셔너리가 가진 아이템 (key & value쌍)을 튜플로 묶어서 리스트 형식으로 반환
d1.items()
list(d1.items())[1]
- in
- in 키워드로 조회할 key값이 존재하는지 여부를 검사할 수 있다
'name2' in d1
- value 값은 확인할 수 없다
'홍길동' in d1
<< 연습문제 >>
- 아래와 같은 딕셔너리를 생성하고 해당 딕셔너리의 value 중 최소값을 구하여 형식에 맞게 출력하세요.
- 생성 딕셔너리 : {'A':9, 'B':80, 'C':70}
- 조건1. 생성한 딕셔너리에 " 'D' : 20, 'E' : 100, 'F' : 10 " 아이템 3개를 추가하세요.
- 조건2. key 'A'의 값을 9 에서 90 으로 변경하세요.
- 조건3. '최소 값 10을 가진 key는 F입니다.'로 포맷팅을 사용하여 출력하고 10을 포맷팅 값으로 사용하세요.
- 조건4. 최소 값은 딕셔너리에 속한 내장함수와 파이썬 내장함수를 모두 사용하여 구해보세요.
조건1.
dict1 = {'A':9, 'B':80, 'C':70}
dict1.update({'D' : 20, 'E' : 100, 'F' : 10})
dict1['D'] = 20
dict1
조건2.
dict1['A'] = 90
dict1
조건3.
'최소값 %d를 가진 key는 %s입니다.' % (dict1['F'], 'F')
조건4.
min(dict1.values())