เมื่อต้องการหาคีย์ที่มีค่าเท่ากับค่าที่กำหนดในดิกชันนารี สามารถแปลงคีย์และค่าเป็นลิสต์ แล้วใช้ index() หาตำแหน่ง
ตัวอย่างโค้ด
my_dict = {"Hi": 100, "there": 121, "Mark": 189}
print("The dictionary is:")
print(my_dict)
keys = list(my_dict.keys())
print("The keys are:", keys)
values = list(my_dict.values())
print("The values are:", values)
pos = values.index(100)
print("Key for value 100:", keys[pos])
pos = values.index(189)
print("Key for value 189:", keys[pos])ผลลัพธ์
The dictionary is: {'Hi': 100, 'there': 121, 'Mark': 189}
The keys are: ['Hi', 'there', 'Mark']
The values are: [100, 121, 189]
Key for value 100: Hi
Key for value 189: Markคำอธิบาย
แปลง
keys()และvalues()เป็นลิสต์เพื่อให้เข้าถึงด้วย index ได้ใช้
values.index(target_value)หาตำแหน่งของค่าเป้าหมายใช้ตำแหน่งนั้นหาคีย์ที่ตรงกันจากลิสต์คีย์
หมายเหตุ: หากมีค่าซ้ำ จะได้แค่คีย์แรกที่เจอ (ใช้
dict comprehensionหรือลูปหากต้องการทุกคีย์)