Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana Mencari Kamus Khusus dalam Senarai Kamus Python dengan Cekap?

Bagaimana Mencari Kamus Khusus dalam Senarai Kamus Python dengan Cekap?

Patricia Arquette
Lepaskan: 2024-12-24 06:11:10
asal
273 orang telah melayarinya

How to Efficiently Find a Specific Dictionary in a Python List of Dictionaries?

Mencari Kamus Khusus dalam Senarai Kamus dalam Python

Diberikan senarai kamus, seperti:

[
  { "name": "Tom", "age": 10 },
  { "name": "Mark", "age": 5 },
  { "name": "Pam", "age": 7 }
]
Salin selepas log masuk

seseorang mungkin perlu mencari dan mendapatkan semula kamus tertentu berdasarkan kriteria tertentu. Contohnya, jika kita ingin mendapatkan semula kamus yang dikaitkan dengan nama "Pam", kita boleh memanfaatkan pelbagai pendekatan Pythonic.

Satu penyelesaian yang berkesan melibatkan penggunaan ungkapan penjana, seperti yang dipamerkan di bawah:

>>> next(item for item in dicts if item["name"] == "Pam")
{'age': 7, 'name': 'Pam'}
Salin selepas log masuk

Ungkapan penjana ini berulang melalui setiap kamus dalam senarai, menilai keadaan dalam if item["name"] == "Pam". Sebaik sahaja kamus memenuhi syarat ini, ia dikembalikan sebagai hasilnya.

Untuk mengendalikan situasi di mana kamus yang diingini mungkin tidak wujud, kami boleh memberikan nilai lalai seperti yang dicadangkan oleh pengguna Matt dalam ulasannya. Ini boleh dicapai menggunakan API yang sedikit berbeza:

next((item for item in dicts if item["name"] == "Pam"), None)
Salin selepas log masuk

Sebagai alternatif, jika kita perlu menentukan indeks kamus yang sepadan dan bukannya kamus itu sendiri, kita boleh menghitung() senarai seperti berikut:

next((i for i, item in enumerate(dicts) if item["name"] == "Pam"), None)
Salin selepas log masuk

Dengan menggunakan teknik ini, kami boleh mencari dan mendapatkan semula kamus tertentu dengan cekap dalam senarai kamus dalam Python, membolehkan kami untuk melaksanakan tugasan manipulasi dan pengambilan data yang kompleks dengan mudah.

Atas ialah kandungan terperinci Bagaimana Mencari Kamus Khusus dalam Senarai Kamus Python dengan Cekap?. 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