Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Maîtriser la méthode String.find() de Python : Syntaxe, Exemples et Alternatives

Qu'est-ce que Python String.find() ?

La méthode String.find() en Python retourne l'index de la première occurrence d'une sous-chaîne spécifiée dans une chaîne. Si la sous-chaîne n'est pas trouvée, elle retourne gracieusement -1 au lieu de lever une exception, ce qui en fait un choix pratique pour les recherches de sous-chaînes.

Dans ce guide, vous apprendrez à utiliser find() efficacement, explorer ses paramètres, le comparer avec des méthodes connexes, et même compter combien de fois une sous-chaîne apparaît.

Syntaxe de Python string find()

La signature de la méthode est simple :

chaîne.find(sous_chaîne, début, fin)

Paramètres

Utiliser find() avec valeurs par défaut

Quand aucun début ou fin n'est fourni, find() scanne toute la chaîne depuis le début. Elle retourne l'index de la première correspondance ou -1 si aucune n'est trouvée.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels est à :", ma_chaine.find("Tutoriels"))

Sortie :

La position de Tutoriels est à : 12

Spécifier un index de début

Fournir un argument début limite la recherche à commencer à cette position, s'étendant à la fin de la chaîne.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels est à :", ma_chaine.find("Tutoriels", 20))

Sortie :

La position de Tutoriels est à : 48

Définir une plage début et fin

En fournissant à la fois début et fin, vous pouvez confiner la recherche à une tranche spécifique de la chaîne.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels est à :", ma_chaine.find("Tutoriels", 5, 30))

Sortie :

La position de Tutoriels est à : 12

Trouver positions et gérer sous-chaînes manquantes

Voici comment find() se comporte quand la sous-chaîne est présente et quand elle est absente.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Meilleur site est à :", ma_chaine.find("Meilleur site", 5, 40))
print("La position de Guru99 est à :", ma_chaine.find("Guru99", 20))

Sortie :

La position de Meilleur site est à : 27
La position de Guru99 est à : -1

Comparer avec rfind()

rfind() est similaire à find() mais retourne l'index le plus haut où la sous-chaîne ocorre. Si la sous-chaîne n'est pas présente, les deux méthodes retournent -1.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels avec find() : ", ma_chaine.find("Tutoriels"))
print("La position de Tutoriels avec rfind() : ", ma_chaine.rfind("Tutoriels"))

Sortie :

La position de Tutoriels avec find() : 12
La position de Tutoriels avec rfind() : 48

Comparer avec index()

La méthode index() se comporte comme find() mais lève une ValueError quand la sous-chaîne est manquante.

Exemple :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels avec find() : ", ma_chaine.find("Tutoriels"))
print("La position de Tutoriels avec index() : ", ma_chaine.index("Tutoriels"))

Sortie :

La position de Tutoriels avec find() : 12
La position de Tutoriels avec index() : 12

Quand la sous-chaîne n'est pas trouvée :

ma_chaine = "Rencontrez Guru99 Tutoriels Site. Meilleur site pour Tutoriels Python !"
print("La position de Tutoriels avec find() : ", ma_chaine.find("test"))
print("La position de Tutoriels avec index() : ", ma_chaine.index("test"))

Sortie :

La position de Tutoriels avec find() : -1
Traceback (most recent call last):
File "task1.py", line 3, in 
print("La position de Tutoriels avec index() : ", ma_chaine.index("test"))
ValueError: substring not found

Compter les occurrences de sous-chaînes

Pour compter combien de fois une sous-chaîne apparaît, itérez sur la chaîne et appelez répétitivement find() avec un index de début mis à jour.

Exemple :

ma_chaine = "test string test, test string testing, test string test string"
indexDebut = 0
compteur = 0
for _ in range(len(ma_chaine)):
    k = ma_chaine.find('test', indexDebut)
    if k != -1:
        indexDebut = k + 1
        compteur += 1
print("Le compte total de la sous-chaîne test est :", compteur)

Sortie :

Le compte total de la sous-chaîne test est : 6

Points clés à retenir

Python

  1. Maîtriser la méthode strip() de Python : Guide complet et exemples pratiques
  2. Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples
  3. Maîtriser les chaînes format() en Python avec exemples clairs
  4. Python len() : Guide pratique pour mesurer la longueur des objets
  5. Maîtriser les fonctions lambda Python : exemples pratiques et bonnes pratiques
  6. Fonction Python round() expliquée avec exemples pratiques
  7. Maîtriser la fonction Python map() : syntaxe, exemples et bonnes pratiques
  8. Python timeit() : mesurer le temps d'exécution avec exemples pratiques
  9. Comprendre type() et isinstance() en Python : exemples pratiques