Ну у меня есть следующий словарь:как сохранить структуру словаря
{'3d1011c0bade5f0a064f7daeef09e7acf900cfe8af09e025859b3426': ['mils news 02122002_0005.txt', 1] }
Где
['mils news 02122002_0005.txt', 1]
является список. И теперь у меня есть следующее:
result_array = {k: db_array.get(k, 0)[1] + db_array.get(k, 0)[1] for k in set(db_array) | set(db_array)}
с этим я хочу суммировать число, которое находится в списке, с другим словарем. Так что мой вопрос заключается в том, чтобы держать словарь без изменений, потому я получаю следующее:
{'3d1011c0bade5f0a064f7daeef09e7acf900cfe8af09e025859b3426': 2}
в результате.
Ожидаемый результат:
{'3d1011c0bade5f0a064f7daeef09e7acf900cfe8af09e025859b3426': ['mils news 02122002_0005.txt', 2] }
Согласно первому ответу пользователя, TNX для решения, но я получаю следующее для различных ключей:
db_array = {'a': ['mils news 02122002_0005.txt', 3]}
>>> result_array = {'b': ['mils news 02122002_0005.txt', 3]}
>>> result_array = {k: [db_array[k][0],db_array[k][1] + result_array.get(k, ['', 0])[1]] for k in set(db_array) | set(result_array)}
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <dictcomp>
KeyError: 'b'
Каков ожидаемый выход? –
Являются ли 'db_array' и' db_array' два разных словаря? –
Я ставлю их дважды, например ... Это исходный код: result_array = {k: db_array.get (k, 0) + result_array.get (k, 0) для k в наборе (db_array) | set (result_array)} – badc0re