2016-04-21 52 views
2

我正在使用api調用格式爲「title」的電影評論:[rating,review]。使用json.loads()函數後的JSON列表看起來是這樣的:如何在json字典中的列表中調用值

listResult: {'Shawsank Redemption': [10, 'I love this movie so much'], 'Tropic Thunder': [9,'This was an awesome movie for sure'], 'Ted': [8, 'Hilarious throughout the entire movie']} 

我不得不返回收視率最高的電影,我假設我必須使用一個for循環來找到最大值,但我不確定如何訪問列表中的評分值

+0

你發佈的內容不是有效的python對象。什麼是'listResult'? – timgeb

+0

答案是否解決了你的問題,還有什麼不清楚的地方? – timgeb

回答

1

以下是如何訪問python列表的評分部分。

listResult = {'Movie': [10, "I love this Movie"]} 

rating = listResult["Movie"][0] 

print rating // Prints 10 

然後只是比較每個評級,找到最大的一個。

4

假設你的字典的名稱爲listResult(你應該改變,它不是一個列表),使用內置的max功能,並提供自定義keyfunction:

>>> listResult = {'Shawsank Redemption': [10, 'I love this movie so much'], 'Tropic Thunder': [9,'This was an awesome movie for sure'], 'Ted': [8, 'Hilarious throughout the entire movie']} 
>>> max(listResult, key=lambda movie: listResult[movie][0]) 
'Shawsank Redemption' 

的keyfunction用於定義電影名稱的排序標準。對於每部電影,我們都會獲得相應列表的第一個元素。

+0

很好的答案!我從來沒有想過這樣做。 – sebenalern

相關問題