1 回答
TA贡献1828条经验 获得超3个赞
我假设数据结构是这样的:
['gameX', 'useless_info', 'genreX', 'info', 'info', ...]
我想如果两个列表上的数据结构相同,那么将两个列表相加并仅交互一次会更容易,对吧?
complete_list = list_of_data1 + list_of_data2
# make one list with all the data
dict_games = {genre : {} for genre in set([x[2] for x in complete_list])}
# make a dict of dict with all genres
for game, _, genre, *info in complete_list:
if game in dict_games[genre]:
# check if the game exits on both list of data and sum the info
info = info + dict_games[genre][game]
dict_games[genre].update({game: info})
如果您想对两个列表中出现的同一游戏的信息进行求和,我认为这是最简单的方法。但如果你想丢弃信息,那么你可以按优先级对数据列表求和,或者如果你想创建一些规则来丢弃信息,那么我建议在数据结构上附加一个标志,并在稍后更新 dict_games 时使用它。请告诉我它是否有效或者是否有什么不太清楚。
添加回答
举报