Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melakukan Carian Terbalik untuk Mencari Kunci Berdasarkan Nilainya dalam Kamus Python?

Bagaimanakah Saya Boleh Melakukan Carian Terbalik untuk Mencari Kunci Berdasarkan Nilainya dalam Kamus Python?

Patricia Arquette
Patricia Arquetteasal
2024-12-21 12:28:09599semak imbas

How Can I Perform a Reverse Lookup to Find a Key Based on its Value in a Python Dictionary?

Cari Balik Dalam Kamus: Mendapatkan Kekunci daripada Nilai

Apabila berurusan dengan kamus dalam pengaturcaraan, selalunya perlu untuk mendapatkan kunci yang dikaitkan dengan nilai tertentu. Dalam konteks ini, anda dipersembahkan dengan fungsi yang bertujuan untuk mencari umur dalam kamus dan memaparkan nama yang sepadan.

Mengatasi Ralat Kunci dan Carian Terbalik

Kod yang anda berikan menimbulkan KeyError pada baris 5 kerana ia cuba mencari umur sebagai kunci dalam kamus. Untuk menyelesaikan masalah ini, anda perlu mencari umur sebagai nilai sebaliknya.

Menggunakan Kaedah kekunci() dan nilai()

Untuk menangani isu tersebut, pertimbangkan untuk menggunakan kekunci() dan kaedah values() dalam Python. Kaedah ini membolehkan anda mengasingkan kunci dan nilai dalam kamus ke dalam senarai berasingan.

Kod yang diperbetulkan di bawah menunjukkan cara untuk mendapatkan kunci yang dikaitkan dengan umur tertentu:

mydict = {'george': 16, 'amber': 19}
search_age = raw_input("Provide age")
name = mydict.keys()[mydict.values().index(int(search_age))]
print(name)

Dalam Python 3.x, anda boleh menggunakan kod berikut:

mydict = {'george': 16, 'amber': 19}
search_age = input("Provide age")
name = list(mydict.keys())[list(mydict.values()).index(int(search_age))]
print(name)

Pendekatan ini memisahkan nilai kamus ke dalam senarai, mencari kedudukan daripada nilai yang dikehendaki, dan kemudian mengambil kunci pada kedudukan itu, berjaya menyelesaikan carian terbalik. Kini, anda boleh mendapatkan semula nama yang dikaitkan dengan mana-mana umur yang disimpan dalam kamus.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melakukan Carian Terbalik untuk Mencari Kunci Berdasarkan Nilainya dalam Kamus Python?. 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