Listen durchsuchen und Elemente testen
Verfasst: Dienstag 1. Dezember 2020, 17:05
Hey ich habe ein kleines Problem mit meiner Aufgabe. Ich soll mittels Rekursion testen ob alle Elemente einer Liste integer sind. Ich habe folgende Funktion geschrieben und habe nur das Problem dass die Funktion zwar abbricht aber mir den falschen boolschen Wert ausgibt wenn ich mich in einer Liste in der Liste befinde. Kann mir jemand erklären wo mein Fehler ist. Für mich als Anfänger müsste das Programm nach dem Rekursiven Aufruf von intSuperliste, beim durchlaufen der for Schleife erkennen, dass 4.3 kein integer oder Liste ist und sagen intBool = False und danach die for Schleife abbrechen.
Code: Alles auswählen
N = [1,3,[4.3,5]]
def intSuperliste(L):
intBool = True
for item in range(len(L)):
if type(L[item]) != int and type(L[item]) != list:
intBool = False
break
elif type(L[item]) == list:
intSuperliste(L[item])
return intBool
print(intSuperliste(N))