Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menyongsangkan Kamus dengan Nilai Senarai?

Bagaimana untuk Menyongsangkan Kamus dengan Nilai Senarai?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 18:39:561063semak imbas

How to Invert a Dictionary with List Values?

Menterbalikkan Kamus dengan Nilai Senarai

Matlamat anda adalah untuk menyongsangkan kamus (indeks) dengan nilai senarai supaya kamus yang terhasil (terbalik) mempunyai nilai pendua digabungkan menjadi satu kunci dengan kunci asal sebagai nilai.

Fungsi yang disediakan, invert_dict, gagal apabila menemui nilai senarai disebabkan oleh sifat senarai yang tidak boleh dicincang. Untuk menyelesaikan masalah ini, pertimbangkan penyelesaian berikut:

<code class="python">inverse = {}
for k, v in index.items():
    for x in v:
        inverse.setdefault(x, []).append(k)</code>

Penyelesaian ini berulang melalui kamus asal (indeks), mengakses setiap kunci (k) dan nilai (v). Untuk setiap nilai dalam v (iaitu senarai), ia menambah kunci yang berkaitan pada senarai dalam kamus songsang menggunakan kaedah setdefault. Kaedah ini mencipta entri baharu untuk setiap nilai unik dalam v dan menambahkan kunci pada senarai yang berkaitan.

Akibatnya, kamus songsang akan mengandungi struktur songsang yang diingini, dengan setiap nilai merupakan senarai kunci asal di mana nilai itu muncul.

Atas ialah kandungan terperinci Bagaimana untuk Menyongsangkan Kamus dengan Nilai Senarai?. 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