Wieso kommt None raus? #Python?

1 Antwort

Du springst bei folgender Anweisung aus dem Code:

elif Zwischenzahl > float(Input):
  b = Mitte(a, b)

Danach läuft die while-Schleife nicht weiter, weil die Bedingung nicht erfüllt wird. Nach der while-Schleife gibst du keinen Wert zurück, deswegen ist dein Endresultat "None". Also musst du überlegen, was du in solchen Fällen als Wert nach der while-Schleife zurückgibst. Für solche Probleme lohnt es sich im Übrigen den Debugger zu verwenden. Dort kannst du Breakpoints setzen und entsprechend das laufende Program inspizieren und die Variablenwerte ansehen.

Zum Code an sich kann ich nichts sagen, außer dass du ihn hier formatieren solltest und nicht so viele Leerzeilen verwenden solltest. Das macht den Code etwas unleserlich. Die Funktionsweise können wir hier schließlich schwerlich beurteilen.

Alex950130 
Fragesteller
 27.07.2022, 11:44

Danke! Ich habe es bereits geschafft, durch den letzten else Punkt eine Einrückung nach außen zu machen. Ich habe gemerkt, das es nicht sein kann, dass eine Bedingung bei der Definition, einer While-Schleife falsch ist, aber in der While-Schleife überprüft wird, ob sie doch richtig ist.

0