Le problème de la multiplication de deux dictionnaires « simples » à l'aide de lambda
, je pris les décisions suivantes:Effectuer des opérations algébriques avec des dictionnaires imbriqués en utilisant "lambda" et "dictionnaire de compréhension"?
v1={'product1': '100', 'product2': '120'}
v2={'product1': '3', 'product2': '2'}
foo = lambda dct_1, dct_2: {key: int(dct_2[key]) * int(dct_1[key]) for key in dct_2}
foo(v1, v2)
# Out: {'product1': 300, 'product2': 240}
Comment puis-je multiplier deux dictionnaires imbriqués de la même manière?
V={'id1': [{'product1': '1', 'product2': '2'}],'id2': [{'product1': '3', 'product2': '4'}]}
Z={'id1': [{'благо1': '10', 'благо2': '25'}], 'id2': [{'product1': '20', 'product2': '15'}]}
La réponse devrait être la suivante:
Out:={'id1': [{'product1': '10', 'product2': '50'}], 'id2': [{'product1': '60', 'product2': '60'}]}
J'utilise python3.
Pourquoi avez-vous des listes dans V, Z? Ils ne sont pas des dictionnaires imbriqués de cette façon – FLab
C'est logique ... peut-être pas tout à fait imbriqué. – Yaroslav