Chapter 12. 딕셔너리(Dictionary)
딕셔너리의 표현
딕셔너리는 { ... } 으로 감싸서 표현하고
key(키) : value(값)
안은 이렇게 생겼다.
- key
- 리스트는 키가 될 수 없다.
- 중복될 수 없다.
- value
- 중복되도 상관없다.
- 아무거나 와도 상관없다.
dc = {
'코카콜라' : 900,
'바나나맛우유' : 750,
}
dc = {
'코카콜라' : (900, '탄산음료'),
'바나나맛우유' : (750, '유제품'),
}
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
데이터 참조, 수정, 추가, 삭제
- 참조
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
v=dc['이름']
print(v)
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
v=dc['이름']
print(v)
인덱스 대신 키 값을 넣고 그 키가 열쇠가 되어 그에 해당하는 값을 꺼내온다.
- 수정
만약에 나이를 수정하고 싶다면!
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
dc['나이'] = 21
print(dc['나이'])
이렇게 수정된 모습을 볼 수 있다.
- 추가
데이터를 추가하고싶다면
음.. 생일을 추가한다고 해보자!
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
dc['생일']='2020.02.02'
print(dc)
이렇게 맨 마지막에 추가가 되는 모습을 볼 수 있다.
- 삭제
정보를 지우고 싶다!
그러면
dc = {
'이름' : '홍길동',
'나이' : 20,
'직업' : '학생'
}
del dc['직업']
print(dc)
이렇게 바뀐 모습을 볼 수 있다.
딕셔너리에서의 '=='
dc1={
'첫번째' : 1,
'두번째' : 2
}
dc2={
'두번째' : 2,
'첫번째' : 1
}
print(dc1==dc2)
dc1={
'첫번째' : 1,
'두번째' : 2
}
dc2={
'두번째' : 2,
'첫번째' : 1
}
print(dc1==dc2)
여기서 출력결과는 False가 나올까요 True가 나올까요?
정답은 True입니다!
여기서 저장 내용은 같지만 저장 순서는 틀리니까 False라고 생각할 수도 있지만,
여기서 알 수 있듯이 딕셔너리의데이터는 저장 순서가 의미가 없기 때문에 True가 나온 것 입니다.
따라서 저장순서가 중요한 데이터라면 딕셔너리보단 다른 것을 이용하여 담아야 됩니다.
in 연산, not in 연산
in 연산과 not in 연산은 딕셔너리에 특정 키가 존재하는지 확인하기 위해 쓰는 것이다.
dc1 = {
'새우깡' : 1500,
'바나나킥' : 1500
}
dc2 = {
'바나나우유' : 1500,
'검은콩우유' : 1500
}
if '바나나우유' in dc2 :
dc2['바나나우유'] = 1300
elif '바나나우유' not in dc2 :
dc2['바나나우유'] = 1300
이렇게 하면 정확하게 정보 수정을 할 수 있다.
for 루프
딕셔너리도 for 루프를 돌릴 수 있는데
dc1 = {
'새우깡' : 1500,
'바나나킥' : 1500,
'곰표나초' : 2500
}
for i in dc1 :
dc1[i]+=500
print(dc1)
이렇게 for 문의 i에는 dc1 안에 있는 key값이 저장된다!
즉 딕셔너리의 key를 중심으로 for 루프가 돌아간다는 것을 볼 수 있다.
Author And Source
이 문제에 관하여(Chapter 12. 딕셔너리(Dictionary)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@pushpull7381/Chapter-12.-딕셔너리Dictionary저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)