Méthode Python String find() avec exemples
Qu'est-ce que Python String find() ?
Chaîne Python find() est une fonction disponible dans la bibliothèque Python pour trouver l'index de la première occurrence d'une sous-chaîne à partir de la chaîne donnée. La fonction string find() renverra -1 au lieu de lever une exception, si la sous-chaîne spécifiée n'est pas présente dans la chaîne donnée.
Dans ce didacticiel sur la méthode Python string find(), vous apprendrez :
- Qu'est-ce que Python String find() ?
- Syntaxe de la chaîne Python find()
- Exemple de méthode find() avec des valeurs par défaut
- Exemple de find() utilisant l'argument start
- Exemple de find() utilisant les arguments de début et de fin
- Exemple de méthode find() Pour trouver la position d'une sous-chaîne donnée dans une chaîne
- Chaîne Python rfind()
- Indice de chaîne Python()
- Pour trouver l'occurrence totale d'une sous-chaîne
Syntaxe de la chaîne Python find()
La syntaxe de base de la fonction Python find() est la suivante :
string.find(substring,start,end)
Paramètres de la méthode find()
Voici trois paramètres de la fonction String find() en Python :
- sous-chaîne :La sous-chaîne que vous souhaitez rechercher dans la chaîne donnée.
- commencer :(optionnel) La valeur de départ à partir de laquelle la recherche de sous-chaîne commencera. Par défaut, c'est 0.
- fin :(optionnel) La valeur de fin où la recherche de sous-chaîne se terminera. Par défaut, la valeur est la longueur de la chaîne.
Exemple de méthode find() avec des valeurs par défaut
Les paramètres passés à la méthode Python find() sont une sous-chaîne, c'est-à-dire la chaîne que vous souhaitez rechercher, démarrer et terminer. La valeur de début est 0 par défaut et la valeur de fin est la longueur de la chaîne.
Dans cet exemple, nous utiliserons la méthode find() en Python avec des valeurs par défaut.
La méthode find() recherchera la sous-chaîne et donnera la position de la toute première occurrence de la sous-chaîne. Maintenant, si la sous-chaîne est présente plusieurs fois dans la chaîne donnée, elle vous renverra toujours l'index ou la position de la première.
Exemple :
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials"))
Sortie :
The position of Tutorials is at: 12
Exemple de find() utilisant l'argument start
Vous pouvez rechercher la sous-chaîne dans la chaîne donnée et spécifier la position de départ, à partir de laquelle la recherche commencera. Le paramètre start peut être utilisé pour la même chose.
L'exemple spécifiera la position de départ à 15, et la méthode find() dans Python commencera la recherche à partir de la position 15. Ici, la position de fin sera la longueur de la chaîne et recherchera jusqu'à la fin de la chaîne à partir de 15 positions partir.
Exemple :
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Sortie :
The position of Tutorials is at 48
Exemple de find() utilisant des arguments de début et de fin
En utilisant le paramètre de début et de fin, nous essaierons de limiter la recherche, au lieu de rechercher la chaîne entière.
Exemple :
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Sortie :
The position of Tutorials is at 12
Exemple de méthode find() Pour trouver la position d'une sous-chaîne donnée dans une chaîne
Nous savons que find() nous aide à trouver l'index de la première occurrence de substring. Elle renvoie -1 si la sous-chaîne n'est pas présente dans la chaîne donnée. L'exemple ci-dessous montre l'index lorsque la chaîne est présente et -1 lorsque nous ne trouvons pas la sous-chaîne que nous recherchons.
Exemple :
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Best site is at:", mystring.find("Best site", 5, 40)) print("The position of Guru99 is at:", mystring.find("Guru99", 20))
Sortie :
The position of Best site is at: 27 The position of Guru99 is at: -1
Chaîne Python rfind()
La fonction Python rfind() est similaire à la fonction find() à la seule différence que rfind() donne l'index le plus élevé pour la sous-chaîne donnée et find() donne le plus bas, c'est-à-dire le tout premier index. rfind() et find() renverront -1 si la sous-chaîne n'est pas présente.
Dans l'exemple ci-dessous, nous avons une chaîne "Meet Guru99 Tutorials Site. Meilleur site pour les tutoriels Python !" et essaiera de trouver la position de la sous-chaîne Tutoriels en utilisant find() et rfind(). L'occurrence de Tutoriels dans la chaîne est double.
Voici un exemple où find() et rfind() sont utilisés.
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("Tutorials")) print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))
Sortie :
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
La sortie montre que find() donne l'index de la toute première sous-chaîne Tutorials qu'il obtient, et rfind() donne le dernier index de la sous-chaîne Tutorials.
Indice de chaîne Python()
La chaîne Python index() est une fonction qui vous donnera la position de la sous-chaîne donnée, tout comme find(). La seule différence entre les deux est que index() lèvera une exception si la sous-chaîne n'est pas présente dans la chaîne et find() renverra -1.
Voici un exemple de travail qui montre le comportement de index() et find().
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("Tutorials")) print("The position of Tutorials using index() : ", mystring.index("Tutorials"))
Sortie :
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Nous obtenons la même position pour find() et index(). Voyons un exemple où la sous-chaîne donnée n'est pas présente dans la chaîne.
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("test")) print("The position of Tutorials using index() : ", mystring.index("test"))
Sortie :
The position of Tutorials using find() : -1 Traceback (most recent call last): File "task1.py", line 3, in <module> print("The position of Tutorials using index() : ", mystring.index("test")) ValueError: substring not found
Dans l'exemple ci-dessus, nous essayons de trouver la position de la sous-chaîne "test". La sous-chaîne n'est pas présente dans la chaîne donnée, et donc en utilisant find(), nous obtenons la position comme -1, mais pour index(), cela génère une erreur comme indiqué ci-dessus.
Pour trouver l'occurrence totale d'une sous-chaîne
Pour trouver le nombre total de fois où la sous-chaîne s'est produite dans la chaîne donnée, nous utiliserons la fonction find() en Python. Bouclera sur la chaîne en utilisant la boucle for de 0 jusqu'à la fin de la chaîne. Utilisera le paramètre startIndex pour find().
Les variables startIndex et count seront initialisées à 0. Inside for –loop vérifiera si la sous-chaîne est présente dans la chaîne donnée en utilisant find() et startIndex comme 0.
La valeur renvoyée par find() si elle n'est pas -1, mettra à jour le startIndex à l'index où la chaîne se trouve et incrémentera également la valeur de comptage.
Voici l'exemple de travail :
my_string = "test string test, test string testing, test string test string" startIndex = 0 count = 0 for i in range(len(my_string)): k = my_string.find('test', startIndex) if(k != -1): startIndex = k+1 count += 1 k = 0 print("The total count of substring test is: ", count )
Sortie :
The total count of substring test is: 6
Résumé
- La méthode Python string find() aide à trouver l'index de la première occurrence de la sous-chaîne dans la chaîne donnée. Il renverra -1 si la sous-chaîne n'est pas présente.
- Les paramètres transmis à la méthode de recherche de sous-chaînes de Python sont des sous-chaînes, c'est-à-dire la chaîne que vous souhaitez rechercher, démarrer et terminer. La valeur de début est 0 par défaut et la valeur de fin est la longueur de la chaîne.
- Vous pouvez rechercher la sous-chaîne dans la chaîne donnée et spécifier la position de départ, à partir de laquelle la recherche commencera. Le paramètre start peut être utilisé pour la même chose.
- En utilisant les paramètres de début et de fin, nous essaierons de limiter la recherche, au lieu de rechercher la chaîne entière.
- La fonction Python rfind() est similaire à la fonction find() à la seule différence que rfind() donne l'index le plus élevé pour la sous-chaîne donnée et find() donne le plus bas, c'est-à-dire le tout premier index. rfind() et find() renverront -1 si la sous-chaîne n'est pas présente.
- La chaîne Python index() est encore une autre fonction qui vous donnera la position de la sous-chaîne donnée tout comme find(). La seule différence entre les deux est que index() lèvera une exception si la sous-chaîne n'est pas présente dans la chaîne et find() renverra -1.
- Nous pouvons utiliser find() pour trouver le nombre total d'occurrences d'une sous-chaîne dans une chaîne donnée.
Python
- Python String strip() Fonction avec EXAMPLE
- Python String count() avec des EXEMPLES
- Python String format() Expliquer avec des EXEMPLES
- Longueur de la chaîne Python | Méthode len() Exemple
- Fonctions Python Lambda avec EXEMPLES
- Fonction Python round() avec EXEMPLES
- Fonction Python map() avec EXEMPLES
- Python Timeit() avec des exemples
- type() et isinstance() en Python avec des exemples