У меня есть несколько массивов, содержащих словари.Я хочу проверить эти массивы и обновить другой список в соответствии с парами ключ-значение, встречающимися при переборе словарей внутри массивов.
Так что для следующих 4 массивов чувств:
senti_array1 = [{'senti':'Positive', 'count':15}, {'senti':'Negative', 'count':10}, {'senti':'Neutral', 'count':5}]
senti_array2 = [{'senti':'Positive', 'count':8}, {'senti':'Negative', 'count':4}]
senti_array3 = [{'senti':'Positive', 'count':2}]
senti_array4 = [{'senti':'Negative', 'count':7}, {'senti':'Neutral', 'count':12}]
pos_list=[]
neg_list=[]
neu_list=[]
Если ихПри отрицательном настроении соответствующий список (neg_list
) в этом случае должен быть обновлен со значением счетчика, в противном случае в список следует добавить 0, если в массиве нет отрицательного настроения.
конечный результат должен быть:
pos_list=[15, 8, 2, 0]
neg_list=[10, 4, 0, 7]
neu_list=[5, 0, 0, 12]
Я пытался использовать нормальные циклы for, но я не получаю желаемого результата, потому что каждый раз, если проверяется условие else, в список добавляется 0, если нет настроения, чтодает неправильный вывод.Я думаю, что карты или лямбда-функции могут быть использованы для этого, но не знаю, с чего начать.