您好我想問這是否最快,並採取最少的資源方式來獲得最接近1字典中的值或有更好,更有效的方式這個。最快的方法來獲得最接近1在Python中的字典鍵
import operator
dct = {"a": 0.1, "b": 0.2, "c": 0.7, "d": 1, "e": 0.5}
sorted_orders = sorted(dct.items(), key=operator.itemgetter(1))
sorted_orders = str(sorted_orders.pop()[:1])
a = len(sorted_orders) - 3
sorted_orders = sorted_orders[2:a]
print sorted_orders
所需的輸出是1這裏的關鍵最接近的內容: d
從來沒有見過任何其他的方式來做到這一點本地,所以有誰必須趁勢撲救。但是你有沒有考慮擴展你的'sorted()'邏輯?在dct.items()中做一個手工'for key,val:',並且在你找到完全匹配的時候破壞它?或者如果可能的話反轉字典?讓整數爲關鍵字,字母爲值,如果可能的話,你可以獲取'dct [1]'。否則,您總是可以使用'from OrderedDict集合中'並將它們保存在數量級中。或者是一個簡單的預先排序的列表,你可以做'分數[-1]'並獲得最高分數? – Torxed
@Torxed我可以用鍵交換值,但不能保證我總是會得到1(這就是爲什麼我想排序值,然後彈出最接近1的值。 – Gunnm