(python)ディクショナリの要素を値でソートする場合

どのようにすればよいのでしょうか?

例えば、文章中の単語の出現回数をカウントして出現回数で単語を並び替えたい場合、など。

>>> D = {'w1': 100, 'w2': 10, 'w3': 1000}
>>> L = zip(D.keys(), D.values())
>>> L
[('w3', 1000), ('w2', 10), ('w1', 100)]
>>> L.sort(lambda x, y: cmp(x[1], y[1]))
>>> L
[('w2', 10), ('w1', 100), ('w3', 1000)]

ディクショナリをリストに変換して、リストのsortメソッドに比較関数を与えて並び替えてみましたが、どうなんでしょう?

プロフィール

このブログ記事について

このページは、koshigoeが2007年3月31日 00:23に書いたブログ記事です。

ひとつ前のブログ記事は「"The Python Challenge"挑戦中」です。

次のブログ記事は「安倍総理のホームページっていじられたんでしたっけ?」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。