Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- C언어
- 파이썬
- Sort
- codingthematrix
- 딥러닝
- python
- hive
- 알고리즘
- GRU
- LSTM
- scrapy
- NumPy
- 텐서플로
- 선형대수
- collections
- effective python
- hadoop2
- 그래프이론
- tensorflow
- yarn
- C
- RNN
- 코딩더매트릭스
- 하둡2
- graph
- HelloWorld
- 주식분석
- 하이브
- Java
- recursion
Archives
- Today
- Total
EXCELSIOR
[Level1] 딕셔너리 정렬 (sort_dictionary) 본문
1. 문제
딕셔너리는 들어있는 값에 순서가 없지만, 키를 기준으로 정렬하고 싶습니다. 그래서 키와 값을 튜플로 구성하고, 이를 순서대로 리스트에 넣으려고 합니다. 예를들어 {"김철수":78, "이하나":97, "정진원":88}이 있다면 각각의 키와 값을 ("김철수", 78) ("이하나", 97) ("정진원", 88) 과 같이 튜플로 분리하고 키를 기준으로 정렬해서 다음과 같은 리스트를 만들면 됩니다. [ ("김철수", 78), ("이하나", 97), ("정진원", 88) ] 다음 sort_dictionary 함수를 완성해 보세요. |
2. 풀이
1) 내가 작성한 코드
- dictionary → tuple로 바꿔주는 tuple( ) 함수와 정렬해주는 sorted( ) 함수를 사용하여 해결하였다.
def sort_dictionary(dic): '''입력받은 dic의 각 키와 값을 튜플로 만든 다음, 키 값을 기준으로 정렬해서 리스트에 넣으세요. 그 리스트를 return하면 됩니다.''' return sorted(tuple(dic.items())) # 아래는 테스트로 출력해 보기 위한 코드입니다. print( sort_dictionary( {"김철수":78, "이하나":97, "정진원":88} ))
2) 다른 풀이
- lambda 함수를 사용하여 문제를 해결하였다. → lambda에 익숙해 지려면 시간이 걸릴 듯 하다...
def sort_dictionary(dic): return sorted(dic.items(), key=lambda x: x[0]) # 아래는 테스트로 출력해 보기 위한 코드입니다. print( sort_dictionary( {"김철수":78, "이하나":97, "정진원":88} ))
3. 알아둘 것
- dictionary items() 함수 : The method items() returns a list of dict's (key, value) tuple pairs
'Python > 알고리즘_문제' 카테고리의 다른 글
[Level1] 최대공약수와 최소공배수 (gcdlcm) (1) | 2016.11.02 |
---|---|
[Level1] 같은 숫자는 싫어 (no_continuous) (4) | 2016.11.02 |
[Level1]문자열 내 마음대로 정렬하기 (strange_sort) (0) | 2016.10.22 |
[Level1] 문자열 내 p와 y의 개수 (numPY) (0) | 2016.10.22 |
[Level1] 문자열 다루기 기본 (alpha_string46) (0) | 2016.10.20 |
Comments