Notice
Recent Posts
Recent Comments
01-20 00:06
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 백준 1756
- 데이터베이스
- ROWNUM
- SQLD
- 깃허브
- 정규화
- join
- 리스트 컴프리헨션
- AWS
- 알고리즘
- 백준 크리문자열
- react
- sql
- 백준 2852
- 프로그래머스 조건에 맞는 개발자 찾기
- SAA-C02
- 백준 11059
- 백준 24499 파이썬
- 파이썬
- github
Archives
- Today
- Total
-
[Python] dictionary 에서 가장 큰 value에 대한 key 값 찾기 본문
반응형
1. Dictionary 생성
# 직접 생성하기
a = {'a': 0, 'b': 1, 'c': 2, 'd': 3}
# zip 함수를 사용해서 생성하기 - zip(key list, value list)
a = dict(zip('abcd',[0,0,0,0]))
# 만들어진 dictionary
{'a': 0, 'b': 0, 'c': 0, 'd': 0}
2. 최대 value에 대한 key 값 찾기
1. 최대 value가 1개일 때
example = {'a': 0, 'b': 1, 'c': 2, 'd': 3}
# max(이름, key=이름.get)
tmp = max(example,key=example.get)
print(tmp)
# 출력 결과
d
2. 최대 value가 2개 이상일 때
a = {'a': 0, 'b': 1, 'c': 5, 'd': 5} # 직접 생성
# 리스트 컴프리헨션 이용
tmp = [k for k,v in a.items() if max(a.values()) == v]
print(tmp)
# 출력 결과
['c', 'd']
최대 value 가 2개 이상인 상황에서 1번의 방법(max 함수)을 사용하면, value의 최댓값 중 맨 앞에 있는 key인 'c' 하나만 출력한다.
따라서 이 경우에는 리스트 컴프리헨션을 사용하는게 낫다.
반응형
'Python' 카테고리의 다른 글
[Python] print 문의 옵션 (sep, end, format, escape) (0) | 2022.05.11 |
---|---|
[Python] 리스트 컴프리헨션 (0) | 2022.05.10 |
[Mac] jupyter notebook 설치 (0) | 2022.05.03 |
[Django] Error: That port is already in use 해결법 (0) | 2021.11.23 |
[Python] Mac에서 Python 기본 버전 변경하기 (1) | 2021.11.16 |
Comments