Maison  >  Article  >  développement back-end  >  Voici quelques options de titre, jouant avec le « pourquoi » dans la question : * **Pourquoi ma fonction Python récursive ne renvoie-t-elle pas True ?** * **Fonction récursive en Python : pourquoi est-elle manquante

Voici quelques options de titre, jouant avec le « pourquoi » dans la question : * **Pourquoi ma fonction Python récursive ne renvoie-t-elle pas True ?** * **Fonction récursive en Python : pourquoi est-elle manquante

Patricia Arquette
Patricia Arquetteoriginal
2024-10-27 03:28:30642parcourir

Here are a few title options, playing with the

Le code récursif ne renvoie pas vrai

Dans le code Python fourni, la fonction récursive isIn() vise à déterminer si un caractère donné existe dans une chaîne. Cependant, le code rencontre un problème inattendu : il ne parvient pas à renvoyer True malgré la localisation réussie du caractère.

La fonction fonctionne en recherchant de manière récursive dans les sous-plages de la chaîne d'entrée aStr. Il partitionne la chaîne en son point médian, compare le caractère cible avec le caractère à ce stade et procède à la recherche dans la moitié supérieure ou inférieure de la chaîne restante en conséquence.

Lorsque le caractère cible est situé à Au milieu, le code affiche "je suis ici maintenant" et tente de renvoyer True. Cependant, il manque une instruction return dans la ligne suivante, ce qui oblige la fonction à renvoyer None au lieu de True.

Pour corriger ce problème, une instruction return doit être ajoutée sur la dernière ligne de la fonction :

<code class="python">return isIn(char, aStr)</code>

Avec cette modification, la fonction retournera correctement True lorsqu'elle localise le personnage cible et False lorsqu'elle épuise toutes les possibilités sans le trouver.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn