Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana Menapis Kamus untuk Mengekalkan Kunci Khusus?

Bagaimana Menapis Kamus untuk Mengekalkan Kunci Khusus?

DDD
DDDasal
2024-11-19 08:01:02665semak imbas

How to Filter a Dictionary to Retain Specific Keys?

Menapis Kamus untuk Mengekalkan Kunci Khusus

Selalunya apabila menggunakan kamus, adalah perlu untuk memperhalusinya untuk mengandungi hanya subset tertentu kunci. Artikel ini meneroka dua kaedah untuk mencapai matlamat ini: membina kamus baharu dengan kekunci yang dikehendaki atau mengalih keluar kekunci yang tidak diingini di tempatnya.

Membina Kamus Baharu

Kaedah pertama melibatkan mencipta kamus baharu yang mengandungi hanya kunci yang diminati. Ini boleh dicapai menggunakan pemahaman kamus, seperti yang ditunjukkan di bawah:

dict_you_want = {key: old_dict[key] for key in your_keys}

Pendekatan ini mempunyai prestasi yang stabil tanpa mengira saiz kamus asal, kerana ia berulang melalui kekunci dalam senarai yang ditentukan (your_keys) dan mengambil nilai yang sepadan daripada kamus asal.

Mengalih Keluar Kekunci Yang Tidak Diingini Di Tempat

Kaedah kedua mengalih keluar terus kekunci yang tidak diingini daripada kamus. Ia bermula dengan mengenal pasti kunci yang hendak dialih keluar:

unwanted = set(old_dict) - set(your_keys)

Seterusnya, gelung melelang ke atas kekunci yang tidak diingini dan memadamkannya daripada kamus:

for unwanted_key in unwanted: del your_dict[unwanted_key]

Kaedah ini mempunyai sedikit lebih tinggi kerumitan daripada pendekatan pertama, kerana ia berulang melalui semua kunci dalam kamus asal untuk mencari yang tidak diingini. Walau bagaimanapun, ia membuat perubahan di tempat, yang mungkin lebih cekap dalam situasi tertentu.

Atas ialah kandungan terperinci Bagaimana Menapis Kamus untuk Mengekalkan Kunci Khusus?. 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