J'ai un problème avec un dictionnaire très simple à 2 niveaux. Mon dictionnaire a des clés (numériques), des secondes clés (numériques) et des noms de sociétés dans les valeurs. Je dois vérifier SEULEMENT la clé n ° 1, parce que je sais que seule possibilité que le nom "FORD" apparaît - est dictionnaire [i] [1] Et comme vous pouvez le voir - chaîne n'est pas égale à 100% avec clé. La clé peut contenir "Ford" (mais la clé a un autre nom de pièce: "Ford Motor"), donc si "Ford" apparaît dans chaque dictionnaire [i] [1] - assignez cette clé au dictionnaire vide "MATCHINGITEMS" dans l'ordre:comparer des valeurs dans un dictionnaire imbriqué
matchingitems[1] = "Ford"
matchingitems[2] = "Ford" etc
Pourriez-vous m'aider?
Dictionary = { „1” : { „1” : "Ford Motor",
„2” : "Volkswagen Autos"
}
"2" : { "1" : "Ducati",
"2" : "Yamaha"
}
"3" : { "1" : "Ford",
"2" : "SEAT"
}
}
matchingitems = {}
i = 0
for value in Dictionary.items():
for key in Dictionary.items[value]:
i += 1
if "Ford" in Dictionary[i][1]:
matchingitems[i] = "Ford"
Will not 'î' aléatoire que le dict est (probablement) pas un dict ordonné, et par conséquent l'indice de enumerate peut changer? –
Oui, vous avez raison. J'ai changé le code en conséquence. Ce n'était pas exactement ce que OP voulait. – elzell
Aussi, la clé peut incrémenter plus de 1, je pense que vous avez besoin de 'matchingitems.append (valeur ['1'])' –