У меня есть два списка словарей.Вычитать значения из списка словарей из другого списка словарей
foo = [{'Tom': 8.2}, {'Bob': 16.7}, {'Mike': 11.6}]
bar = [{'Tom': 4.2}, {'Bob': 6.7}, {'Mike': 10.2}]
Вычитание а и Ь должны быть обновлены в обув:
foo = [{'Tom': 4.0}, {'Bob': 10.0}, {'Mike': 1.4}]
Теперь я попытался это с двумя петлями и zip
-функции:
def sub(a,b):
for mydict,mydictcorr in zip(a,b):
{k:[x-y for x, y in mydict[k], mydictcorr[k]] for k in mydict}
return mydict
print sub(foo,bar)
Я получаю TypeError: 'float' object is not iterable
, Где моя ошибка?
Ваши структуры данных неправы. 'foo' и' bar', вероятно, не должны быть списками словарей. Или, по крайней мере, словари не должны иметь разных ключей. Что вы представляете? Что вам нужно сделать с данными? –