我有一个列表,其中包含名称、位置和点数,然后有一个新列表,我设法从游戏api中获取数据,循环它并在之后添加它,它将清空新列表并刷新重复(在我的示例中,我不会放api循环代码,而是将我得到的数据类型放在一起以使其更简单)
list = [
['Charlie', '3', '2000'],
['Bill', '2', '2100'],
['Alan', '1', '2200']
]
newlist = [
['Charlie', '3', '2300'],
['Bill', '2', '2350'],
['Alan', '1', '2400']
]
#doesn't work as mentioned previously
list.append(updatedlist)
print(list)
所以我只需要将新列表更新到主列表中,正如您所看到的,对于给定的名称位置对,新列表中的分数会发生变化。在
我希望原始列表能反映最新的分数。我该怎么做?在
一个基本的假设是,在您的用例中,
lst
(不要使用list
来命名对象)肯定比newlist
大得多,而且并不是所有的条目都要更新(或者您可以刚刚完成lst = newlist
)。在这里的另一个假设是元组中的前两个元素构成“key”,最后一个元素形成每个条目的“value”。我们将在解决方案中使用此设置。在
一个强力解决方案将涉及一个嵌套循环,并在二次时间内运行。您可以散列数据并将其简化为线性操作,使用
OrderedDict
来维持顺序。在让字典帮你处理更新。在
^{pr2}$相关问题 更多 >
编程相关推荐