Python – La méthode String find()
La méthode find() recherche la première occurrence de la valeur spécifiée et renvoie -1 si la valeur n’est pas trouvée. La méthode find() est presque pareil à la méthode index(), la seule différence est que la méthode index() lève une exception si la valeur n’est pas trouvée.
Syntaxe:
string.find(value, start, end)
Paramètres:
- value(Obligatoire) : La valeur à rechercher
- start(Optionnel) : Où commencer la recherche. La valeur par défaut est 0
- end(Optionnel) : Où terminer la recherche. La valeur par défaut est à la fin de la chaîne
Valeur de retour:
La méthode find() renvoie une valeur entière:
- Si la sous-chaîne existe à l’intérieur de la chaîne, elle renvoie l’index de la première occurrence de la sous-chaîne.
- Si la sous-chaîne n’existe pas à l’intérieur de la chaîne, elle renvoie -1.
Exemple 1:
Dans l’exemple suivant on cherche où se trouve le mot « WayToLearnX » dans le texte.
str = "Hello, welcome to WayToLearnX." i = str.find("WayToLearnX") print(i)
Sortie:
18
Exemple 2:
Où dans le texte se trouve la première occurrence de la lettre « o » lorsque vous recherchez uniquement entre la position 6 et 15.
str = "Hello, welcome to WayToLearnX." i = str.find("o", 6, 15) print(i)
Sortie:
11
Bonjour, suite à une exécution du script de l’exemple 1 sur vsd j’ai pu y voir une erreur dans la valeur de sortie que vous spécifiez. Sauf erreur de ma part, la valeur renvoyée par la méthode n’est pas 7 mais bien 18.
la valeur qui devrait s’afficher est bien 18 🙂
Comment faire pour trouver tout les emplacement d’une lettre dans une chaine de caractères au lieu de juste le premier emplacement?