1
我試圖從基於值的字典中獲得前20個條目。我使用orderedDict按值排序條目。但是,當我試圖從orderedDict中刪除一個條目(爲了保持orderedDict的恆定長度,即20),它不會發生。如何從python中的orderedDict中刪除條目
我寫了下面的代碼:
while linecount>0:
line=images.readline().split()
#compute "score" for each line
if (len(result)<20):
result.update({(str(line)):score})
else:
if(len(result)==20):
result=OrderedDict(sorted(result.items(), key=lambda t: t[1]))
if(result.items()[0][1]<score):
del result.items()[0]
temp=str(line)
result.update({temp:score})
但刪除/移除未在步驟發生:
del result.items()[0]
和結果的長度保持21一旦進入到(21 )值
我做錯了什麼,我怎麼辦呢?