파이썬 딕셔너리질문합니다
조회수 536회
a={'top':2,'mid':1,'bot':4,'jug':0}
여기 a라는 딕셔너리가있고 a의 value중에 가장 높은것을 구할려고 해요
근데 a가 만약에 리스트라면
MAX = 0
i =0
for x in range(len(a)):
if a[i]>MAX:
MAX = a[0]
i=i+1
else: i=i+1
이런식으로 최댓값을 구할수있잖아요
딕셔너리로 이런식으로 할려면 어떻게해야 하나요?혹시 못하나요?
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
a = { 'top':2,'mid':1,'bot':4,'jug':0 } for key, value in a.items(): print(key) print(value)
for-in 루프의 대상으로 딕셔너리를 넘기면 매 반복마다 요소의 키와 값을 가져올 수 있습니다.
-
단순 최댓값
a={'top':2,'mid':1,'bot':4,'jug':0} max(a.values()) # 4
최댓값이 매핑된 키값
a={'top':2,'mid':1,'bot':4,'jug':0} max(a.keys(), key=a.get) # 'bot'
최댓값을 가지는 key-value 모두 구하기
a={'top':2,'mid':1,'bot':4,'jug':0} from operator import itemgetter key, value = max(a.items(), key=itemgetter(1)) # key: 'bot', value: 4
댓글 입력