ich bin Python-Anfänger und wollte daher fragen, ob jemand weiß wie ich am besten eine Liste tief kopieren kann, und wie ich eine möglichst einfache Funktion dazu schreiben kann.
Z.B: Möchte ich:
liste1=[1,2,3,[4,5],6,7]
neueliste= listdeepcopy(liste1)
So, dass auch die verschachtelten listen mitkopiert werden. Die Funktion deepcopy ist daher genau das was das macht, nur ich möchte es nur für listen, und als "eigene" Funktion haben und zwar rekursiv.
Ich habe es so probiert:
Code: Alles auswählen
def listdeepcopy(l):
k=[]
for e in l:
if isinstance( e, list ):
k.append(listdeepcopy(e))
else:
k.append(e)
return k
Aber mir scheint die Methode trotzdem falsch zu sein , da bei k.append(listdeepcopy(e)), man es auch weglassen kann, und somit kein Sinn ergibt.
Weiß jemand wie ich das besser machen kann?
Vielen Dank im vorraus.