Trong bài viết này, chúng ta sẽ học về giải pháp và phương pháp giải quyết bài toán cho trước.
Đề bài
Cho một dictionary, chúng ta cần tìm ba giá trị lớn nhất và hiển thị chúng.
Cách 1 – Sử dụng module collections (hàm Counter)
Ví dụ
from collections import Counter
# Dictionary ban đầu
my_dict = {'t': 3, 'u': 4, 't': 6, 'o': 5, 'r': 21}
k = Counter(my_dict)
# Tìm 3 giá trị lớn nhất
high = k.most_common(3)
print("Dictionary with 3 highest values:")
print("Keys: Values")
for i in high:
print(i[0], " :", i[1], " ")
Kết quả
Dictionary with 3 highest values: Keys: Values r : 21 t : 6 o : 5
Cách 2 – Sử dụng module heapq (hàm nlargest)
Ví dụ
import heapq
# Dictionary ban đầu
my_dict = {'t': 3, 'u': 4, 't': 6, 'o': 5, 'r': 21}
# Tìm 3 giá trị lớn nhất
high = heapq.nlargest(3, my_dict.items(), key=lambda x: x[1])
print("Dictionary with 3 highest values:")
print("Keys: Values")
for i in high:
print(i[0], " :", i[1], " ")
Kết quả
Dictionary with 3 highest values: Keys: Values r : 21 t : 6 o : 5
Kết luận
Trong bài viết này, chúng ta đã học về cách tìm 3 giá trị lớn nhất trong dictionary.