Seite 1 von 1

Vergleich von 2 Listen_2

Verfasst: Donnerstag 19. August 2010, 14:32
von Michi_J
Wie muss ich denn weiter verfahren bei folgender Konstellation:

Liste1 --> listenpaar[6, 0], [14, 1], [2, 2],...
Liste2 --> liste_Koordinaten [0, XYZ], [14 XYZ], [1, XYZ],[2, XYZ], ...

jetzt sollen die beiden Listen verglichen werden: wenn der 0. Eintrag des Tupels in der liste_Koordinaten = 0. Eintrag des Tupels in der Liste listenpaar. Ist dies der Fall, dann soll in einer neuen Liste die entsprechende Koordinate XYZ eingefügt werden (sprich den 1. Eintrag des Tupels)...

hierzu hab ich jetzt erstmal liste_Koordinaten in ein dictionary umgewandelt, dann folgt der Vergleich...

Code: Alles auswählen


replacement_map2 = dict(liste_Koordinaten)
print replacement_map2
print "__________________"
neue_liste2 = []
for key in replacement_map2:
    print "Schlüssel: " +str(key)
    print "Wert: " + str(wert)
    if key in internal_faces2:
        neue_liste2.append(replacement_map2[wert])
        print "der neue Wert: " + str(replacement_map2[wert])
        print "die neue Liste: " +str(neue_liste2)
    else:
        pass
print neue_liste2


das Problem ist jetzt noch, dass er überall die Koordinate des letzten Eintrages der replacement_map2 einträgt und nicht die jeweilig zugehörige Koordinate.
Worin liegt hier der Fehler? Vielen Dank nochmals für die Hilfe.

Re: Vergleich von 2 Listen_2

Verfasst: Donnerstag 19. August 2010, 14:57
von Pekh
Wo bindest du den 'wert' erstmalig? Kann es sein, daß du da wieder irgendwelche alten Testdaten im Hintergrund hast, die das Versuchsergebnis beeinflussen? Denn eigentlich müßte er dir mit einer saftigen Ausnahme um die Ohren fliegen.

Du hast diesen Quellcode aber schon in einer Datei gespeichert, die du jedes Mal direkt ausführst, oder? Das alte Daten rumspuken passiert nämlich eigentlich nur in einer interaktiven Shell.

Re: Vergleich von 2 Listen_2

Verfasst: Samstag 21. August 2010, 06:22
von Michi_J
ja, pekh, du hattest recht. Ich hab den Fehler auch gefunden und behoben. Vielen Dank für den Hinweis!