Python 딕셔너리 value 값으로 key 값 찾기
- Python/기초
- 2020. 11. 28.
반응형
반응형
딕셔너리는 key : value 값으로 되어있습니다. key값을 넣어주면 value 값이 나오는 구조입니다.
그런데 value 값으로 key 값을 찾아야 할 경우가 종종 생기지만 dict 명령으로는 불러올 수가 없습니다.
코드로써 해결해야 합니다. 그럴 때 쓰는 방법입니다.
저는 두가지 방법을 알고 있습니다.
1. dict을 뒤집어서 key 와 value 자리를 바꾼다.
2. for 문을 활용한다.
1. dict을 뒤집어서 key와 value 자리를 바꾼다.
첫번째 방법은 map을 활용해 dict을 뒤집어 새로운 dict으로 생성하는 방법입니다.
먼저 pratice_dict을 만들겠습니다. 종목명이 key, 종목코드가 value 입니다.
>>> pratice_dict = {}
>>> pratice_dict['삼성전자'] = '005930'
>>> pratice_dict['카카오'] = '035720'
>>> pratice_dict['현대차'] = '005380'
>>> print(pratice_dict)
{'삼성전자': '005930', '카카오': '035720', '현대차': '005380'}
이 dict을 map으로 key와 value를 바꿉니다. reverse_dict으로 새로 생성하겠습니다.
>>> reverse_dict= dict(map(reversed,pratice_dict.items()))
>>> print(reverse_dict)
{'005930': '삼성전자', '035720': '카카오', '005380': '현대차'}
key와 value 가 뒤집어진 새로운 dict이 생성되었습니다.
2. for 문을 활용한다.
두 번째 방법은 for 문을 활용하는 방법입니다. 첫번째 방법처럼 새로운 dict을 생성하지 않아도 됩니다.
다른 목적이 있어 for 문을 활용할 때 같이 쓰면 좋습니다.
삼성전자를 코드로 찾아보겠습니다.
>>> for key, value in pratice_dict.items():
>>> if value == '005930':
>>> print(key)
삼성전자
for 문을 활용해 value 값이 같으면 print 해달라고 코드를 입력했습니다.
이걸말고도 다양한 방법이 있을수도 있는데 아직은 코드 장인이 아니라서
위의 두가지 방법 설명하고 포스팅을 마치겠습니다.
'Python > 기초' 카테고리의 다른 글
[Python] iter와 next (0) | 2021.01.20 |
---|---|
Python의 기본 자료구조 (0) | 2021.01.06 |
Anaconda Navigator (가상환경생성,삭제,모듈업데이트,삭제) (0) | 2020.11.18 |
[Jupyter] 알면 유용한 단축키 (0) | 2020.09.16 |
[업무자동화] 윈도우 작업스케줄러 사용해 파이썬 실행하기 (19) | 2020.09.03 |