728x90
728x170
딕셔너리(Dictionary)
딕셔너리(Dictionary)
- 쌍 2개가 하나로 묶인 자료구조
- 의미 있는 두 값을 연결하여 구성한다.
- 중괄호({ })를 묶어 구성하며, 키(Key)와 값(Value)의 쌍으로 구성되어 있다.
딕셔너리변수 = {키1:값1, 키2:값2, 키3:값3, ...}
딕셔너리 생성
방법 1 : '키' : '값' 형식으로 생성하기
dict1 = {1 : 'a', 2 : 'b', 3 : 'c'}
방법 2: '값' : '키' 형식으로 생성하기
dict2 = {'a' : 1, 'b' : 2, 'c' : 3}
- 키와 값은 사용자가 지정하는 것이지 어떤 값을 반드시 사용해야 한다는 규정은 없다.
- 딕셔너리에는 순서가 없어 생성한 순서대로 딕셔너리가 구성되어 있다는 보장을 할 수 없다는 점에 주의한다.
- 딕셔너리는 여러 정보를 변수 하나로 표현할 때 유용하다.
student1 = {'학번' : 1000, '이름' : '홍길동', '학과' : '컴퓨터과학과'}
- 딕셔너리 키는 유일해야 하므로, 다음 코드를 작성하면 동일한 키를 갖는 딕셔너리를 생성하는 것이 아니라 마지막에 있는 키가 적용된다.
student1 = {'학번' : 1000, '이름' : '홍길동', '학과' : '컴퓨터과학과', '학번' : 2000} # '학번' 을 중복하여 입력
student1
더보기
{'학번': 2000, '이름': '홍길동', '학과': '컴퓨터과학과'}
쌍 추가하기
딕셔너리이름[키] = 값
예 : '연락처' 추가하기
student1['연락처'] = '010-1234-5678'
student1
더보기
{'학번': 1000, '이름': '홍길동', '학과': '컴퓨터과학과', '연락처': '010-1234-5678'}
- 이미 존재하는 키를 사용하면 새로운 쌍이 추가되는 것이 아니라 기존 값이 변경된다.
- 딕셔너리 특성상, 키는 유일해야 하기 때문이다.
쌍 삭제하기
del(딕셔너리이름[키])
예 : '학과' 삭제하기
del(student1['학과'])
student1
더보기
{'학번': 1000, '이름': '홍길동', '연락처': '010-1234-5678'}
딕셔너리 사용
- 딕셔너리는 키를 사용하여 값을 구한다.
① '키'로 '값'에 바로 접근하기
예 : 키로 값에 접근하기
student1['학번']
student1['이름']
student1['학과']
더보기
2000
'홍길동'
'컴퓨터과학과'
② get() 함수 사용하기
딕셔너리이름.get(키)
- 딕셔너리이름[키] 와 딕셔너리이름.get(키) 는 결과가 같다.
- 딕셔너리이름[키] 는 없는 키를 호출하면 오류(KeyError)가 발생한다.
- 딕셔너리이름.get(키) 는 없는 키를 호출하면 아무것도 반환하지 않는다.
- 없는 키를 찾을 때가 있으면, 이 방법을 사용하는 것이 바람직하다.
예 : get() 함수를 사용하여 키로 값에 접근하기
student1.get('이름')
더보기
'홍길동'
③ keys() 함수 사용하기
딕셔너리이름.keys()
- 딕셔너리의 모든 키를 반환한다.
예 : keys() 함수를 사용하여 모든 키 반환하기
student1.keys()
더보기
dict_keys(['학번', '이름', '연락처'])
- 실행 결과의 dict_keys 를 가리고 싶으면 list(딕셔너리이름.keys()) 함수를 사용한다.
예 : list() 함수를 사용하여 keys() 함수의 실행 결과 중 'dict_keys' 가리기
list(student1.keys())
더보기
['학번', '이름', '연락처']
④ values() 함수 사용하기
딕셔너리이름.values()
- 딕셔너리의 모든 값을 리스트로 만들어 반환한다.
- 실행 결과의 dict_values를 가리고 싶으면 list(딕셔너리이름.values()) 함수를 사용한다.
예 : values() 함수를 사용하여 모든 값을 리스트로 만들어 반환하기
student1.values()
더보기
dict_values([1000, '홍길동', '010-1234-5678'])
⑤ items() 함수 사용하기
딕셔너리이름.items()
- 딕셔너리의 모든 키와 값을 튜플로 만들어 반환한다.
예 : items() 함수를 사용하여 모든 키와 값을 튜플로 만들어 반환하기
student1.items()
더보기
dict_items([('학번', 1000), ('이름', '홍길동'), ('연락처', '010-1234-5678')])
⑥ in 사용하기
키 in 딕셔너리이름
- 딕셔너리 안에 해당 키가 있는지 확인한다.
- 딕셔너리에 키가 있다면 True를, 없으면 False를 반환한다.
예 : in을 사용하여 딕셔너리 안에 해당 키가 있는지 확인하기
'이름' in student1
'주소' in student1
더보기
True
False
사용 예
singer = {}
singer['이름'] = '트와이스'
singer['구성원 수'] = 9
singer['데뷔'] = '서바이벌 식스틴'
singer['대표곡'] = 'SIGNAL'
for k in singer.keys():
print('%s --> %s' % (k, singer[k]))
더보기
이름 --> 트와이스
구성원 수 --> 9
데뷔 --> 서바이벌 식스틴
대표곡 --> SIGNAL
728x90
그리드형(광고전용)
'Programming > Python' 카테고리의 다른 글
[Python] 파이썬을 이용하여 함수 그래프 그리기 (NumPy, matplotlib.pyplot) (0) | 2022.04.12 |
---|---|
[Python] 튜플(Tuple) (0) | 2022.03.19 |
[Python] 문자열 (0) | 2022.03.19 |
[Python] 세트(Set) (0) | 2022.03.19 |
[Python] 리스트(List) (0) | 2022.03.19 |
[Python] global (0) | 2022.03.19 |
[Python] 파이썬에서의 main() 함수 (0) | 2022.03.19 |
[Python] 파이썬에서 넘파이(NumPy) 설치하기 (0) | 2022.03.19 |