Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengisih Kamus Python mengikut Kekunci?

Bagaimana untuk Mengisih Kamus Python mengikut Kekunci?

Susan Sarandon
Susan Sarandonasal
2024-12-23 19:09:15729semak imbas

How to Sort a Python Dictionary by Keys?

Cara Isih Kamus menggunakan Python

Kamus dalam Python ialah struktur data tidak tertib. Walau bagaimanapun, terdapat keadaan di mana pengisihan kamus mengikut kekuncinya diperlukan.

Contoh Input:

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

Output yang Diingini:

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

Sawa Piawai Kamus

Kamus Python standard mengekalkan susunan kunci hanya pada versi Python 3.7. Sebelum versi 3.7, menggunakan fungsi sorted(d.items()) tidak akan mencapai hasil yang diingini kerana kamus ini tidak mengekalkan susunan pasangan yang diisih.

OrderedDict

Untuk versi sebelum Python 3.7, penyelesaiannya ialah menggunakan Kelas OrderedDict daripada modul koleksi. Kelas ini menyimpan pasangan nilai kunci dalam susunan di mana ia disisipkan, memastikan susunan yang konsisten.

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)

Output:

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

Python 3

Untuk Python versi 3 dan ke atas, Kaedah .items() hendaklah digunakan dan bukannya .iteritems():

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

Output:

1 89
2 3
3 0
4 5

Atas ialah kandungan terperinci Bagaimana untuk Mengisih Kamus Python mengikut Kekunci?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn