ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง
แจ้งปัญหา − เราได้รับพจนานุกรม และเราจำเป็นต้องพิมพ์ค่าสูงสุด 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 ค่าในพจนานุกรม