Détecteur de motifs
Fait partie de la section Fondamentaux 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 :
textetpattern - Compte le nombre de fois où
patternapparaît danstext, y compris les occurrences qui se chevauchent - Renvoie un tuple contenant :
- Une valeur booléenne 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 vaut "abababab" et pattern vaut "aba", votre fonction doit renvoyer (True, 3, [0, 2, 4]), puisque "aba" apparaît aux positions 0, 2 et 4.
Si le motif n’est pas trouvé, renvoyez (False, 0, []).
À propos du mot-clé pass : Vous verrez pass dans le code par défaut. C’est un mot-clé Python qui signifie "do nothing" et qui sert d’espace réservé lorsque Python exige un bloc de code indenté (par exemple, dans une fonction). Vous devez remplacer pass par le code de votre fonction.
Essayez vous-même
def find_occurrences(text, pattern):
# Écrivez votre code ici
pass
# Lisez l’entrée
text = input()
pattern = input()
# Appelez votre fonction et affichez le résultat
result = find_occurrences(text, pattern)
print(result)Toutes les leçons de Fondamentaux
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éfautEntraînez-vous par vous-même : Compilateur Python en ligne