Ich bekomme den 'too many values to unpack'
Fehler. Irgendeine Idee, wie ich das beheben kann?
first_names = ['foo', 'bar']
last_names = ['gravy', 'snowman']
fields = {
'first_names': first_names,
'last_name': last_names,
}
for field, possible_values in fields: # error happens on this line
Für Python wurde 3.x
iteritems
entfernt. Verwenden Sie stattdessen Elemente .quelle
Sie möchten Iteritems verwenden . Dies gibt einen Iterator über das Wörterbuch zurück, der Ihnen ein Tupel (Schlüssel, Wert) gibt.
Ihr Problem war, dass Sie Felder durchlaufen haben, wodurch die Schlüssel des Wörterbuchs zurückgegeben werden.
quelle
Verwenden Sie für Listen
enumerate
iteritems
funktioniert nicht für Listenobjektequelle
In Python3
iteritems()
wird nicht mehr unterstütztLÖSUNG1 :
Verwenden
.items
LÖSUNG2 :
Sie können verwendet werden
enumerate()
als auchquelle
Kann nicht direkt im Wörterbuch iterieren. So können Sie durch Konvertieren in Tupel .
quelle
Sie fehlen
fields.iteritems()
in Ihrem Code.Sie können es auch auf andere Weise tun, indem Sie Werte mithilfe von Schlüsseln im Wörterbuch abrufen.
quelle
quelle