Heim > Artikel > Backend-Entwicklung > Hier sind ein paar Titeloptionen, die mit dem „Warum“ in der Frage spielen: * **Warum gibt meine rekursive Python-Funktion nicht „True“ zurück?** * **Rekursive Funktion in Python: Warum fehlt sie?
Rekursiver Code gibt nicht „True“ zurück
Im bereitgestellten Python-Code zielt die rekursive Funktion isIn() darauf ab, festzustellen, ob ein bestimmtes Zeichen existiert innerhalb einer Zeichenfolge. Der Code stößt jedoch auf ein unerwartetes Problem, bei dem er trotz erfolgreicher Lokalisierung des Zeichens nicht „True“ zurückgibt.
Die Funktion durchsucht rekursiv innerhalb von Teilbereichen der Eingabezeichenfolge aStr. Es unterteilt die Zeichenfolge in der Mitte, vergleicht das Zielzeichen char mit dem Zeichen an dieser Stelle und sucht entsprechend entweder in der oberen oder unteren Hälfte der verbleibenden Zeichenfolge.
Wenn sich das Zielzeichen befindet In der Mitte gibt der Code „Ich bin jetzt hier“ aus und versucht, True zurückzugeben. Allerdings fehlt in der folgenden Zeile eine Return-Anweisung, was dazu führt, dass die Funktion None statt True zurückgibt.
Um dieses Problem zu beheben, sollte in der letzten Zeile der Funktion eine Return-Anweisung hinzugefügt werden:
<code class="python">return isIn(char, aStr)</code>
Mit dieser Änderung gibt die Funktion ordnungsgemäß True zurück, wenn sie das Zielzeichen findet, und False, wenn sie alle Möglichkeiten ausschöpft, ohne es zu finden.
Das obige ist der detaillierte Inhalt vonHier sind ein paar Titeloptionen, die mit dem „Warum“ in der Frage spielen: * **Warum gibt meine rekursive Python-Funktion nicht „True“ zurück?** * **Rekursive Funktion in Python: Warum fehlt sie?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!