ホームページ >バックエンド開発 >Python チュートリアル >Python 辞書をキーでソートするには?

Python 辞書をキーでソートするには?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-23 19:09:15770ブラウズ

How to Sort a Python Dictionary by Keys?

Python を使用して辞書を並べ替える方法

Python の辞書は順序付けされていないデータ構造です。ただし、キーによる辞書のソートが必要な場合もあります。

入力例:

{2:3, 1:89, 4:5, 3:0}

必要な出力:

{1:89, 2:3, 3:0, 4:5}

標準 Python辞書

標準の Python 辞書は、Python バージョン 3.7 以降でのみキーの順序を維持します。バージョン 3.7 より前では、これらの辞書はソートされたペアの順序を保持しないため、sorted(d.items()) 関数を使用しても望ましい結果は得られません。

OrderedDict

Python 3.7 より前のバージョンの場合、解決策はcollections モジュールの OrderedDict クラス。このクラスは、キーと値のペアを挿入された順序で保存し、一貫した順序を保証します。

import collections

d = {2:3, 1:89, 4:5, 3:0}

# Create an OrderedDict from sorted key-value pairs
od = collections.OrderedDict(sorted(d.items()))

print(od)

出力:

OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])

Python 3

Python バージョン 3 以降の場合、.items() メソッドは次のようになります。 .iteritems()の代わりに使用されます:

for k, v in od.items():
    print(k, v)

出力:

1 89
2 3
3 0
4 5

以上がPython 辞書をキーでソートするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。