回答編集履歴
1
追記
answer
CHANGED
@@ -48,4 +48,26 @@
|
|
48
48
|
"ERTH": 1,
|
49
49
|
"GS": 1
|
50
50
|
}
|
51
|
-
```
|
51
|
+
```
|
52
|
+
|
53
|
+
コメントを受けて
|
54
|
+
---
|
55
|
+
ヒントだけ。
|
56
|
+
```Python
|
57
|
+
>>> from collections import OrderedDict
|
58
|
+
>>>
|
59
|
+
>>> hoge = {'foo': 4, 'bar': 6, 'foobar': 7}
|
60
|
+
>>> sorted_hoge = OrderedDict()
|
61
|
+
>>> for k, v in sorted(hoge.items(), key=lambda x: x[1], reverse=True):
|
62
|
+
... sorted_hoge[k] = v
|
63
|
+
...
|
64
|
+
>>> print(sorted_hoge)
|
65
|
+
OrderedDict([('foobar', 7), ('bar', 6), ('foo', 4)])
|
66
|
+
```
|
67
|
+
|
68
|
+
dictのビューに比べ、OrderedDictのビューは一定の順序を保証します。
|
69
|
+
平たく言うと、`.items()`や`.keys()`、`.values()`による値が挿入順になるということです。
|
70
|
+
|
71
|
+
適宜リファレンスを見て、理解を深めるようにしてください。
|
72
|
+
・ [Python 標準ライブラリ » 組み込み関数 » sorted](https://docs.python.jp/3/library/functions.html#sorted)
|
73
|
+
・ [Python 標準ライブラリ » データ型 » collections » OrderedDict](https://docs.python.jp/3/library/collections.html#collections.OrderedDict)
|