Je dois comparer les clés d'un dictionnaire avec une liste.
l = {"Carlos": 1131577, "Rodrigo": 3250239, "Marisol": 1174787}
avec les mots en
d = "Carlos Marisol"
Pour chaque mot de la chaîne qui apparaît dans le dictionnaire, je voudrais additionner les valeurs correspondantes.
Le résultat devrait être quelque chose comme ceci :
2306364
Carlos Marisol
Le code que j'ai fait est le suivant :
l = {"Carlos": 1131577, "Rodrigo": 3250239, "Marisol": 1174787}
d = "Carlos Marisol"
a = d.split(' ')
n = 0
h = ""
f = len(a)
for k, v in l.items():
if k == a[0] or k == a[1]:
n += v
h += k + " "
print(n)
print(h)
Le résultat est le suivant :
2306364
Carlos Marisol
Comme vous pouvez le voir, cela fonctionne, mais MANUELLEMENT pour ainsi dire.
if k == a[0] or k == a[1]:
La variable a
: a[0]
, a[1]
doit être itérable en fonction de ses positions, car ajouter une autre donnée ne fonctionne pas, comment faire ?
Car avec ces données, il ne fonctionne pas correctement :
l = {"Rodrigo": 2155029, "Sebastian": 3290180, "Camilo": 4271313, "Marisol": 2964688}
d = "Marisol Sebastian Ana Camilo"