Ich habe ein Problem mit einem sehr einfachen zweistufigen Wörterbuch. Mein Wörterbuch hat Schlüssel (numerisch), zweite Schlüssel (numerisch) und benennt Firma in Werten. Ich muss nur Taste Nr. 1 überprüfen, weil ich weiß, dass nur die Möglichkeit, dass "FORD" Name erscheint - ist Wörterbuch [i] [1] Und wie Sie sehen können - Zeichenfolge ist nicht gleich in 100% mit Schlüssel. Der Schlüssel kann "Ford" enthalten (aber der Schlüssel hat einen anderen Teilenamen: "Ford Motor"). Wenn "Ford" in jedem Wörterbuch [i] [1] erscheint, weisen Sie diesen Schlüssel dem leeren Wörterbuch "MATCHINGITEMS" zu:Werte im verschachtelten Wörterbuch vergleichen
matchingitems[1] = "Ford"
matchingitems[2] = "Ford" etc
Können Sie mir helfen?
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"
Wird nicht 'zufällig I' als die dict (vermutlich) nicht eine geordnete dict, und damit der Index von enumerate kann sich ändern? –
Ja, Sie haben Recht. Ich habe den Code entsprechend geändert. Es war auch nicht genau das, was OP wollte. – elzell
Außerdem kann der Schlüssel mehr als 1 inkrementieren, ich denke du brauchst 'matchingitems.append (Wert ['1'])' –