回答
我會假設你有一些數據,看起來像:
names = ['Alice', 'Bob', "Charlie", "David", "Eve"]
scores = [1, 2, 3, 4, 5]
和你想獲得頂部n
(爲便於使用,我們將使用n=2
)名稱,按照分數排序。有很多方法可以做到這一點,最簡單的方法是使用字典。我們希望與落得:
name_score_dict = {"Alice": 1,
"Bob": 2,
"Charlie": 3,
"David": 4,
"Eve": 5}
我們能做的事情,在幾個不同的方式,但zip
是至關重要的事情沒怎麼。最容易理解的可能是使用詞典理解。
name_score_dict = {name:score for name,score in zip(names, scores)}
更加緊湊,但可能更難理解,使用dict
構造
name_score_dict = dict(zip(names, scores))
現在,所有你需要做的是讓字典在某種排序的狀態。有一個bajillion如何排序一個字典,瞭解哪些I will leave you to read爲什麼我在做什麼有意義的堆棧溢出不同的問題,但:
sorted_d = sorted(name_score_dict.items(), key=lambda kv: kv[1], reverse=True)
這應該給你的東西,如:
[("Eve", 5), ("David", 4), ("Charlie", 3), ("Bob", 2), ("Alice", 1)]
因此,切斷第一個n
項目以獲得name, score
元組。
for name,score in sorted_d[:n]:
print("Name is {} and score is {}".format(name, score))
(這也採用string formatting,這是值得我們學習對自己)
我認爲你的最後一個鏈接應該引用python 3.x文檔不是2.x. –
@ChristopherPearson啊,不妨。固定。 –
抱歉挑選。 –
- 1. 如何鏈接兩個mysql表?
- 2. 如何鏈接laravel中的兩個表?
- 3. 鏈接兩個表之間的列
- 4. 交換兩個鏈接列表條目
- 5. 兩個鏈接列表的聯盟
- 6. 兩個鏈接列表的總和
- 7. 追加兩個鏈接列表
- 8. 兩個鏈接列表的聯合 - C++
- 9. java結合了兩個鏈接列表
- 10. 兩個鏈接列表的交集
- 11. C# - 鏈接兩個列表有效
- 12. 在C#中鏈接兩個列表
- 13. 我將如何清除鏈接列表?
- 14. 如何反轉我的鏈接列表?
- 15. 如何遍歷前面兩個節點的鏈接列表?
- 16. 如何鏈接VB6中兩個列表框的索引
- 17. 如何交換C中鏈接列表中的兩個節點?
- 18. 如何合併兩個排序後的鏈接列表?
- 19. 如何打印兩個鏈接列表程序
- 20. 如何檢查兩個鏈接列表之間的共同值?
- 21. 如何用php,javascript,mysql「鏈接」兩個下拉列表?
- 22. 列表列表;我如何將每個值鏈接到新列表?
- 23. 這是我如何在鏈接列表中創建鏈接列表?
- 24. 我如何實現一個鏈接列表和另一個類
- 25. SQL從兩個鏈接表
- 26. MySQL:M:N Table鏈接兩個表
- 27. SQL - 鏈接兩個表
- 28. 如何連接兩個Snoc列表?
- 29. 如何在鏈接列表中創建鏈接列表?
- 30. Java中的鏈接列表 - 比較兩個列表
顯示的代碼,好嗎? –
此問題目前無法解答。至少請提供示例輸入和預期輸出。如果你有,也請顯示你到目前爲止嘗試過的。 – 5gon12eder
請添加更多信息! –