정보처리기사 실기PythonPython - 딕셔너리 순회와 정렬난이도 2SHORT_ANSWER

정보처리기사 실기 Python - 딕셔너리 순회와 정렬 기출문제 #1674

문제

다음 Python 코드의 실행 결과를 쓰시오.

Python
data = {"x": 45, "y": 30, "z": 60} ranked = sorted(data.items(), key=lambda item: item[1]) print(ranked[1][0], ranked[-1][0])

정답

x z

x z

해설

딕셔너리의 items()를 값(value) 기준으로 오름차순 정렬합니다.

  1. data.items()는 [('x', 45), ('y', 30), ('z', 60)]을 반환
  2. lambda item: item[1]은 각 튜플의 두 번째 원소(값)를 기준으로 정렬
  3. 값 기준 오름차순 정렬 결과: [('y', 30), ('x', 45), ('z', 60)]
  4. ranked[1][0]은 두 번째 항목의 키 = 'x'
  5. ranked[-1][0]은 마지막 항목의 키 = 'z' 따라서 출력은 'x z'입니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.