假設字典包含10個以上鍵值對。字典應該按值(整數)排序。打印前10個值(和相應的鍵)。我認爲這裏給出了更好的解決方案。通過字典遍歷X次
for keys in sorted(x):
c=c+1
if c>10:
break
else:
print keys, x['keys']
假設字典包含10個以上鍵值對。字典應該按值(整數)排序。打印前10個值(和相應的鍵)。我認爲這裏給出了更好的解決方案。通過字典遍歷X次
for keys in sorted(x):
c=c+1
if c>10:
break
else:
print keys, x['keys']
for key in sorted(x, key=x.get, reverse=True)[:10]:
print key, x[key]
對於真正的大dict
你應該考慮使用heapq
from heapq import nlargest
for key in nlargest(10, x, key=x.get):
print key, x[key]
在字典鍵上沒有定義順序,所以「第一個」鍵沒有定義好。具體來說,你所做的事情更容易完成x.keys()[:10]
。
topten = sorted(x.items(), key=lambda x:-x[1])[:10]
沒有在Python「第一」 10個字典詞條的概念,因爲字典是無序的。你的意思是「任何10個條目」? –
是的,任何10個條目都可以。 – Selvam
對不起,更正。我將需要按降序排列值(整數值)。打印前十個值。 – Selvam