我有一个列表prices
:
prices = [0.9986, 0.8065, -0.1779, 0.8065]
和字典列表mydicts
:
mydicts = [{'name':'Food1'}, {'name':'Food2'}, {'name':'Food3'}, {'name':'Food4'}]
现在我需要将每个价格项作为键值传递给每个字典中的 price
,结果如下:
mydicts = [
{'name':'Food1', 'price':0.9986},
{'name':'Food2', 'price':0.8065},
{'name':'Food3', 'price':-0.1779},
{'name':'Food4', 'price':0.8065}
]
为了做到这一点,我遍历列表和字典列表,并将列表的每个值分配给字典:
for price, dictionary in zip(prices, mydicts):
dictionary['price'] = price
我想知道是否有更有效的方法来做到这一点,就我而言,我必须为字典列表分配很多值,但我不确定这是否是最有效的方法。
答案 0 :(得分:2)
您的解决方案没有任何问题。是O(n),效率尽可能高,而且简单简短。
答案 1 :(得分:0)
没有比 O(n) 方法更有效的方法了,因为您必须接触每个索引才能创建每个元素。