Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menapis Kamus Python dengan Cekap kepada Kunci Khusus?

Bagaimana untuk Menapis Kamus Python dengan Cekap kepada Kunci Khusus?

Barbara Streisand
Lepaskan: 2024-11-22 06:01:14
asal
430 orang telah melayarinya

How to Efficiently Filter a Python Dictionary to Specific Keys?

Menapis Kamus kepada Kekunci Tertentu

Apabila bekerja dengan kamus dalam Python, selalunya perlu menapisnya untuk memasukkan kunci tertentu sahaja. Nasib baik, terdapat kaedah yang cekap untuk mencapai matlamat ini.

Membina Kamus Baharu:

Satu pendekatan ialah membina kamus baharu yang mengandungi hanya kekunci yang dikehendaki:

new_dict = {key: old_dict[key] for key in desired_keys}
Salin selepas log masuk

Ini menggunakan pemahaman kamus untuk mengulangi kekunci yang dikehendaki dan membina kamus baharu dengan nilai kunci tersebut berpasangan.

Mengalih Keluar Kekunci Yang Tidak Diingini Di Tempat:

Pendekatan alternatif ialah mengubah suai kamus sedia ada, mengalih keluar semua kekunci yang tidak diingini:

unwanted_keys = set(old_dict) - set(desired_keys)
for key in unwanted_keys:
    del old_dict[key]
Salin selepas log masuk

Ini berulang ke atas kekunci yang tidak diingini, menggunakan kata kunci del untuk mengalih keluarnya daripada kamus.

Pertimbangan Prestasi:

Apabila memilih antara membina kamus baharu atau mengubah suai kamus sedia ada, adalah penting untuk mempertimbangkan implikasi prestasi:

  • Membina kamus baharu mempunyai prestasi yang stabil, tanpa mengira saiz asal kamus.
  • Mengubah suai kamus sedia ada boleh membawa kepada prestasi O(n), di mana n ialah bilangan kunci dalam kamus asal.

Oleh itu, pada umumnya disyorkan untuk bina kamus baharu apabila bilangan kekunci yang dikehendaki agak kecil berbanding saiz kamus asal. Untuk kamus yang lebih besar, mengubah suai kamus sedia ada mungkin lebih cekap.

Atas ialah kandungan terperinci Bagaimana untuk Menapis Kamus Python dengan Cekap kepada Kunci Khusus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan