Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ค้นหาค่าสูงสุด 3 ค่าในพจนานุกรมในโปรแกรม Python


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง

แจ้งปัญหา − เราได้รับพจนานุกรม และเราจำเป็นต้องพิมพ์ค่าสูงสุด 3 ค่าในพจนานุกรม

มีสองแนวทางดังที่กล่าวไว้ด้านล่าง

วิธีที่ 1:การใช้ฟังก์ชัน Collections.counter()

ตัวอย่าง

# collections module
from collections import Counter
# Dictionary
my_dict = {'T': 23, 'U': 22, 'T': 21,'O': 20, 'R': 32, 'S': 99}
k = Counter(my_dict)
# 3 highest values
high = k.most_common(3)
print("Dictionary with 3 highest values:")
print("Keys : Values")
for i in high:
   print(i[0]," : ",i[1]," ")

ผลลัพธ์

Dictionary with 3 highest values:
Keys : Values
S : 99
R : 32
U : 22

วิธี mostcommon() จะคืนค่ารายการขององค์ประกอบที่พบบ่อยที่สุด n รายการ และการนับจากองค์ประกอบที่พบบ่อยที่สุดไปหาน้อยที่สุด

วิธีที่ 2 การใช้ฟังก์ชัน nlargest.heapq()

ตัวอย่าง

# nlargest module
from heapq import nlargest
# Dictionary
my_dict = {'T': 23, 'U': 22, 'T': 21,'O': 20, 'R': 32, 'S': 99}
ThreeHighest = nlargest(3, my_dict, key = my_dict.get)
print("Dictionary with 3 highest values:")
print("Keys : Values")
for val in ThreeHighest:
   print(val, " : ", my_dict.get(val))

ผลลัพธ์

Dictionary with 3 highest values:
Keys : Values
S : 99
R : 32
U : 22

ในที่นี้ เราใช้องค์ประกอบที่ใหญ่ที่สุด n รายการที่รับอาร์กิวเมนต์สามรายการ หนึ่งคือไม่มีองค์ประกอบที่จะเลือก และอีกสองอาร์กิวเมนต์ ได้แก่ พจนานุกรมและคีย์

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีค้นหาค่าสูงสุด 3 ค่าในพจนานุกรม