【发布时间】:2019-03-27 03:28:36
【问题描述】:
使用 Riot 的 API,我正在开发一个应用程序来分析来自玩家英雄联盟比赛历史的数据。
我有一个包含商品名称和购买时间(以秒为单位)
的列表item_list =
[['Boots of Speed', 50],
['Health Potion', 60],
['Health Potion', 80],
['Dorans Blade', 120],
['Dorans Ring', 180],
['Dorans Blade', 200],
['Dorans Ring', 210]]
我正在尝试将其转换为包含商品名称和平均购买时间的唯一商品列表。
对于这个例子,这就是我希望将我的列表转换成的内容:
['Boots of Speed', 50]
['Health Potion', 70]
['Dorans Blade', 160]
['Dorans Ring', 195]
我尝试的解决方案是创建一个空字典,遍历列表,将字典键设置为项目名称,将平均时间设置为键值。
dict = {}
for item in item_list:
item_name = item[0]
time_of_purchase = item[1]
dict[item_name] = (dict[item_name] + time_of_purchase) / 2 # Would cast this as an integer
问题在于,我将尝试在变量 dict[item_name] 初始化之前对其执行计算。
此时我有点卡住了。任何指针或帮助将不胜感激。
【问题讨论】:
标签: python iteration nested-lists