Détecteur de motifs
Fait partie de la section Fundamentals du Journey Python de Coddy — leçon 76 sur 77.
Défi
MoyenCréez une fonction nommée find_occurrences qui :
- Prend deux arguments de type chaîne de caractères :
textetpattern - Compte combien de fois
patternapparaît danstext, en incluant les occurrences qui se chevauchent - Retourne un tuple contenant :
- Un booléen indiquant si le motif a été trouvé (True/False)
- Le nombre d'occurrences du motif
- Une liste des positions de départ où le motif a été trouvé
Par exemple, si text est "abababab" et pattern est "aba", votre fonction devrait retourner (True, 3, [0, 2, 4]), puisque "aba" apparaît aux positions 0, 2 et 4.
Si le motif n'est pas trouvé, retournez (False, 0, []).
À propos du mot-clé <strong>pass</strong> : Vous verrez pass dans le code par défaut. C'est un mot-clé Python qui signifie « ne rien faire » et qui est utilisé comme espace réservé lorsque Python requiert un bloc de code indenté (comme à l'intérieur d'une fonction). Vous devez remplacer pass par le code réel de votre fonction.
Essayez vous-même
def find_occurrences(text, pattern):
# Écrivez votre code ici
pass
# Lire l'entrée
text = input()
pattern = input()
# Appeler votre fonction et afficher le résultat
result = find_occurrences(text, pattern)
print(result)Toutes les leçons de Fundamentals
4Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateurs logiques, partie 47Calculateur de partage d'addition
Message de bienvenueSaisie des données10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables
NombresChaînes de caractèresBooléensConventions de nommageVariables videsRécapitulatif - Initialiser des variables8Boucles
Boucle ForBoucle WhileBreakContinueRécapitulatif - FactorielleLa fonction RangeBoucles imbriquéesRécapitulatif - Saisie dynamique3Les opérateurs, partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesRécapitulatif - Calculs simplesOpérateurs de comparaison6E/S de base
SortieSortie avec des variablesEntréeCastRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArgumentsRetourner une valeurRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut