ホームページ > バックエンド開発 > Python チュートリアル > Python でソートするときに辞書キーの順序を維持するにはどうすればよいですか?

Python でソートするときに辞書キーの順序を維持するにはどうすればよいですか?

DDD
リリース: 2025-01-04 22:12:43
オリジナル
940 人が閲覧しました

How Can I Maintain Dictionary Key Order When Sorting in Python?

Python での辞書の順序の保持

Python の辞書は本質的に順序付けされていないため、キーを並べ替えるのが困難です。この記事では、辞書をキーで並べ替える方法について説明します。

標準辞書

標準 Python 辞書は、(キー、値) ペアの特定の順序を維持しません。 paris をソートすると、辞書の予測できない順序が変更されます。

OrderedDict: 解決策

dict のサブクラスである OrderedDict クラスがこの問題に対処します。要素の挿入順序を記憶し、並べ替え後もキーの順序が維持されるようにします。

import collections

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

# Create an OrderedDict with sorted keys
od = collections.OrderedDict(sorted(d.items()))

# Print the sorted OrderedDict
print(od)
ログイン後にコピー

出力:

OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])
ログイン後にコピー

値へのアクセス

ソートされたキーにもかかわらず、OrderedDict は値に対して予期される動作を保持します。 access.

print(od[1])  # Prints 89
print(od[3])  # Prints 0
ログイン後にコピー

反復

OrderedDict を反復すると、ソートされたキーの順序が保持されます。

for k, v in od.items():
    print(k, v)
ログイン後にコピー
ログイン後にコピー

出力:

1 89
2 3
3 0
4 5
ログイン後にコピー

Python 3

Python 3 では、項目の反復処理に更新された構文を使用します。

for k, v in od.items():
    print(k, v)
ログイン後にコピー
ログイン後にコピー

以上がPython でソートするときに辞書キーの順序を維持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート