"Sichern" von Listen
Verfasst: Montag 5. November 2012, 08:03
Hallo Leute,
ich kämpfe gerade wieder mit einem kleinen Python Problem. Ich habe 2 relativ große Listen, auf welche ich eine Methode zur Überprüfung eines Vorgangs anwenden muss. Diese Methode verändert den Inhalt dieser Liste, ich brauche nach der Methode aber wieder den gleichen Inhalt wie vor der Methode. Also habe ich mir gedacht, speicher ich doch einfach mal die Werte der Listen in 2 andere Platzhalter und hole mir nach der Methode wiederum von diesen die Werte für meine eigentlichen Listen.
So weit, so gut, dass Problem ist bloß, dass Übertragen von Listen mit = in Python wohl nicht funktioniert, warum auch immer. Da ich das Gleiche Problem aber schonmal hatte, wusste ich eine Lösung, nämlich die Python-Methode extend. Das Problem bei extend ist nur, dass scheinbar viel zu viel Rechenleistung verbraucht wird und mein Programm abstürzt.
In Code ausgedrückt:
funktioniert nicht:
überfordert Rechner:
Über einfache und schnelle Lösungsvorschläge wäre ich sehr dankbar!
Danke schonmal,
Bonsai

ich kämpfe gerade wieder mit einem kleinen Python Problem. Ich habe 2 relativ große Listen, auf welche ich eine Methode zur Überprüfung eines Vorgangs anwenden muss. Diese Methode verändert den Inhalt dieser Liste, ich brauche nach der Methode aber wieder den gleichen Inhalt wie vor der Methode. Also habe ich mir gedacht, speicher ich doch einfach mal die Werte der Listen in 2 andere Platzhalter und hole mir nach der Methode wiederum von diesen die Werte für meine eigentlichen Listen.
So weit, so gut, dass Problem ist bloß, dass Übertragen von Listen mit = in Python wohl nicht funktioniert, warum auch immer. Da ich das Gleiche Problem aber schonmal hatte, wusste ich eine Lösung, nämlich die Python-Methode extend. Das Problem bei extend ist nur, dass scheinbar viel zu viel Rechenleistung verbraucht wird und mein Programm abstürzt.
In Code ausgedrückt:
funktioniert nicht:
Code: Alles auswählen
temp_liste1 = []
temp_liste2 = []
liste1 = [x,y,[v,w,z], usw...]
liste2 = [x,y,1,1,a,g[v,w,z],b, usw...]
temp_liste1 = liste1
temp_liste2 = liste2
liste1.methode()
liste2.methode
liste1 = []
liste2 = []
liste1 = temp_liste1
liste2 = temp_liste2
Code: Alles auswählen
temp_liste1 = []
temp_liste2 = []
liste1 = [x,y,[v,w,z], usw...]
liste2 = [x,y,1,1,a,g[v,w,z],b, usw...]
temp_liste1.extend(liste1)
temp_liste2.extend(liste2)
liste1.methode()
liste2.methode
liste1 = []
liste2 = []
liste1.extend(temp_liste1)
liste2.extend(temp_liste2)
Danke schonmal,
Bonsai