Pelaksanaan Jadual Hash Dwi Arah dengan Kelas Bidict
Jadual cincang dua arah menyediakan keupayaan untuk mengindeks dengan kedua-dua kunci dan nilai dalam data yang sama struktur. Kamus asli Python ialah struktur data yang berharga untuk pemetaan sehala, tetapi ia gagal apabila ia berkaitan dengan carian dua arah. Artikel ini membentangkan cara yang cekap untuk melaksanakan jadual cincang dua arah dalam Python.
Butiran Pelaksanaan
Inti pelaksanaan ialah kelas bidict, yang memanjangkan kamus standard Python . Kelas ini mengekalkan dua kamus: satu untuk pemetaan nilai kunci standard dan satu lagi, kamus songsang, untuk pemetaan kunci nilai.
Ciri Utama
Kelas bidict menawarkan beberapa ciri ketara:
Contoh Penggunaan
Untuk menunjukkan kefungsiannya, mari buat bidict dan manipulasinya:
<code class="python">import numpy as np bd = bidict(zip(['a', 'b'], np.random.randint(2, size=2))) print(bd) # {'a': 1, 'b': 0} print(bd.inverse) # {1: ['a'], 0: ['b']}</code>
Kami boleh mengubah suai nilai untuk kekunci 'a':
<code class="python">bd['a'] = 0 print(bd) # {'b': 0, 'a': 0} print(bd.inverse) # {0: ['b', 'a']}</code>
Perhatikan bahawa kamus songsang dikemas kini secara automatik untuk mencerminkan perubahan. Kami juga boleh memadamkan item daripada kamus:
<code class="python">del bd['a'] print(bd) # {'b': 0} print(bd.inverse) # {0: ['b']}</code>
Sekali lagi, kamus songsang dengan lancar menyesuaikan pemadaman.
Kesimpulannya, kelas bidict menyediakan pelaksanaan dwiarah yang cekap dan mudah jadual hash dalam Python, menawarkan direktori songsang pengemaskinian automatik, sokongan untuk berbilang kunci dengan nilai yang sama dan carian masa tetap.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Melaksanakan Jadual Hash Dwiarah dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!