Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menapis Kekunci dengan Cekap dalam Kamus Python?

Bagaimana untuk Menapis Kekunci dengan Cekap dalam Kamus Python?

Barbara Streisand
Lepaskan: 2024-11-17 21:37:02
asal
885 orang telah melayarinya

How to Efficiently Filter Keys in Python Dictionaries?

Penapisan Dict Terpilih

Dalam Python, kamus menyimpan pasangan nilai kunci. Selalunya, kita mungkin menghadapi senario di mana hanya set kunci tertentu daripada kamus besar yang berkaitan. Ini menimbulkan persoalan: bagaimanakah kita boleh menapis kekunci yang tidak diingini dengan cekap untuk mendapatkan subset terfokus kamus asal?

Python menawarkan beberapa pendekatan untuk mencapai penapisan ini. Satu kaedah melibatkan membina kamus baharu yang mengandungi hanya kekunci yang diingini:

dict_you_want = {key: old_dict[key] for key in your_keys}
Salin selepas log masuk

Di sini, pemahaman kamus digunakan untuk mencipta kamus baharu ("dict_you_want") dengan mengulangi kekunci yang ditentukan ("your_keys") dan termasuk nilai sepadannya daripada kamus asal ("old_dict").

Pendekatan lain melibatkan in-place penapisan untuk menghapuskan kekunci yang tidak diingini:

unwanted = set(old_dict) - set(your_keys)
for unwanted_key in unwanted: del your_dict[unwanted_key]
Salin selepas log masuk

Dalam kes ini, kekunci yang tidak diingini dikenal pasti dengan menolak kekunci yang dikehendaki ("kunci_anda") daripada semua kekunci dalam kamus asal ("old_dict"). Kekunci yang tidak diingini ini kemudiannya diulang dan dialih keluar daripada kamus menggunakan pernyataan "del".

Pilihan pendekatan bergantung pada ciri prestasi dan kes penggunaan yang dimaksudkan. Kaedah pertama mempunyai kelebihan untuk mencipta kamus baharu yang stabil tanpa mengira saiz kamus asal. Kaedah kedua adalah cekap untuk kamus besar kerana ia mengelakkan penciptaan struktur data perantaraan.

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

sumber:php.cn
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