Ich habe ein Aufgabe in der ich eine funktion definieren soll mit der man Listen glätten kann.
als Beispielliste nehme ich [3,4,[[5]]] daraus soll dann diese Liste enstehen: [3,4,5]
Der Code gibt mir bei dem Aufruf von der funktion am Ende allerdings diese Liste: [[5]]
die neue Liste die ich mir erstellt habe "newlist" sieht wie folgt aus: [3,4,5] also so wie es seien sollte.
habe es auch mit print(newlist) getestet.
was ich nicht verstehe warum meine funktion diese Liste zurückgibt [[5]] und nicht [3,4,5]
Code: Alles auswählen
egg = [3,4,[[5]]]
newlist = []
def flatten(lst):
global newlist
for x in lst:
while type(x) == list:
flatten(x)
return x
else:
newlist += [x]
return newlist
print(flatten(egg))
lg THLC53