我编写了一个代码,用于查看交易清单,查看公司是买入还是卖出,并将价值转换为美元,然后将其返回。问题是我的原始列表如下所示:
[['Acer', 481242.74], ['Beko', 966071.86], ['Cemex', 187242.16], ['Datsun', 748502.91], ['Equifax', 146517.59], ['Gerdau', 898579.89], ['Haribo', 265333.85]]
当我运行我的代码时,它会迭代大约100个事务,并在每个事务返回一个如下示例之后:
['Acer', 21439.6892]
现在我的问题是我想用这个新值更新原始列表中的值,以便它仍然具有公司名称,但是它后面的两个值将被添加,新值将出现在原始列表中下一次迭代。所以481242.74 + 21439.6892 = 502682.4292所以新的原始列表看起来如下,更新了acer值
[['Acer',502682.4292 ], ['Beko', 966071.86], ['Cemex', 187242.16], ['Datsun', 748502.91], ['Equifax', 146517.59], ['Gerdau', 898579.89], ['Haribo', 265333.85]]
答案 0 :(得分:0)
您应该使用字典来订购您的公司
d ={'Acer': 481242.74,'Beko': 966071.86, 'Cemex': 187242.16, 'Datsun': 748502.91, 'Equifax': 146517.59, 'Gerdau': 898579.89, 'Haribo': 265333.85}
for k,v in d.items():
d[k] = v+sample[1]
答案 1 :(得分:0)
使用字典而不是列表。
#Make the master data structure a Dictionary
myDict = {'Acer':float(481242.74) }
print myDict
#iterate over the newList and update the master dictionary
newList = [['Acer', float(502682.4292)]]
for Company, NewValue in newList:
myDict[Company]=(myDict[Company]+NewValue)
print myDict