Comment vérifier si une chaîne de caractères commence par un préfixe en Python

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à vérifier si une chaîne de caractères commence par un préfixe spécifique en Python en utilisant la méthode startswith(). Cette compétence est essentielle pour des tâches telles que la validation de données et le traitement de fichiers.

Vous allez créer un script Python pour démontrer l'utilisation des préfixes de chaîne de caractères. Le script définira une chaîne de caractères, puis utilisera startswith() pour vérifier si elle commence par "Hello" et "Goodbye", et affichera les résultats dans la console. Vous exécuterez ensuite le script et observerez la sortie.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") subgraph Lab Skills python/strings -.-> lab-559583{{"Comment vérifier si une chaîne de caractères commence par un préfixe en Python"}} python/build_in_functions -.-> lab-559583{{"Comment vérifier si une chaîne de caractères commence par un préfixe en Python"}} end

Comprendre les préfixes de chaîne de caractères

Dans cette étape, vous apprendrez à propos des préfixes de chaîne de caractères en Python et à les utiliser pour vérifier si une chaîne de caractères commence par un préfixe spécifique. Comprendre les préfixes de chaîne de caractères est essentiel pour diverses tâches, telles que la validation de données, le traitement de fichiers et l'analyse de commandes.

Un préfixe de chaîne de caractères est une séquence de caractères qui apparaît au début d'une chaîne de caractères. Par exemple, la chaîne de caractères "Hello, world!" a le préfixe "Hello". Python propose une méthode intégrée appelée startswith() qui vous permet de vérifier si une chaîne de caractères commence par un préfixe spécifique.

Commençons par créer un script Python pour démontrer comment utiliser les préfixes de chaîne de caractères.

  1. Ouvrez l'éditeur VS Code dans l'environnement LabEx.

  2. Créez un nouveau fichier nommé prefix_example.py dans le répertoire ~/project.

    touch ~/project/prefix_example.py
  3. Ouvrez le fichier prefix_example.py dans l'éditeur et ajoutez le code suivant :

    message = "Hello, LabEx!"
    
    ## Check if the string starts with "Hello"
    if message.startswith("Hello"):
        print("The string starts with 'Hello'")
    else:
        print("The string does not start with 'Hello'")
    
    ## Check if the string starts with "Goodbye"
    if message.startswith("Goodbye"):
        print("The string starts with 'Goodbye'")
    else:
        print("The string does not start with 'Goodbye'")

    Ce code définit une variable de chaîne de caractères message, puis utilise la méthode startswith() pour vérifier si la chaîne de caractères commence par "Hello" et "Goodbye". La sortie indiquera si la chaîne de caractères commence par les préfixes spécifiés.

  4. Enregistrez le fichier prefix_example.py.

  5. Exécutez le script en utilisant la commande python dans le terminal :

    python ~/project/prefix_example.py

    Vous devriez voir la sortie suivante :

    The string starts with 'Hello'
    The string does not start with 'Goodbye'

    Cette sortie confirme que la chaîne de caractères message commence par "Hello" mais pas par "Goodbye".

La méthode startswith() est un outil puissant pour vérifier les préfixes de chaîne de caractères en Python. Dans les étapes suivantes, vous explorerez des techniques plus avancées pour utiliser les préfixes de chaîne de caractères, telles que la gestion de la sensibilité à la casse et la vérification de plusieurs préfixes.

Utiliser la méthode startswith()

Dans cette étape, vous approfondirez votre connaissance de la méthode startswith() et explorerez ses capacités avec différents arguments. Vous apprendrez à vérifier des préfixes à des positions spécifiques dans une chaîne de caractères et à vérifier plusieurs préfixes.

La méthode startswith() peut accepter des arguments optionnels pour spécifier les positions de début et de fin pour la vérification du préfixe. La syntaxe est la suivante :

string.startswith(prefix, start, end)
  • prefix : Le préfixe à vérifier.
  • start : La position de départ pour la vérification (optionnel).
  • end : La position de fin pour la vérification (optionnel).

Modifions le fichier prefix_example.py pour démontrer ces fonctionnalités.

  1. Ouvrez le fichier prefix_example.py dans l'éditeur VS Code.

  2. Modifiez le code pour inclure ce qui suit :

    message = "Hello, LabEx!"
    
    ## Check if the string starts with "Hello"
    if message.startswith("Hello"):
        print("The string starts with 'Hello'")
    else:
        print("The string does not start with 'Hello'")
    
    ## Check if the string starts with "LabEx" starting from position 7
    if message.startswith("LabEx", 7):
        print("The string starts with 'LabEx' at position 7")
    else:
        print("The string does not start with 'LabEx' at position 7")
    
    ## Check if the string starts with "Hello" within the first 5 characters
    if message.startswith("Hello", 0, 5):
        print("The string starts with 'Hello' within the first 5 characters")
    else:
        print("The string does not start with 'Hello' within the first 5 characters")

    Dans ce code, nous avons ajouté deux autres vérifications en utilisant la méthode startswith() avec les arguments start et end. La première vérification vérifie si la chaîne de caractères commence par "LabEx" à partir de la position 7. La deuxième vérification vérifie si la chaîne de caractères commence par "Hello" dans les 5 premiers caractères.

  3. Enregistrez le fichier prefix_example.py.

  4. Exécutez le script en utilisant la commande python dans le terminal :

    python ~/project/prefix_example.py

    Vous devriez voir la sortie suivante :

    The string starts with 'Hello'
    The string starts with 'LabEx' at position 7
    The string does not start with 'Hello' within the first 5 characters

    Cette sortie montre comment les arguments start et end peuvent être utilisés pour vérifier des préfixes à des positions spécifiques dans une chaîne de caractères.

Maintenant, explorons comment vérifier plusieurs préfixes en utilisant un tuple.

  1. Modifiez le fichier prefix_example.py pour inclure ce qui suit :

    message = "Hello, LabEx!"
    
    ## Check if the string starts with "Hello" or "Hi"
    if message.startswith(("Hello", "Hi")):
        print("The string starts with 'Hello' or 'Hi'")
    else:
        print("The string does not start with 'Hello' or 'Hi'")
    
    ## Check if the string starts with "Goodbye" or "Welcome"
    if message.startswith(("Goodbye", "Welcome")):
        print("The string starts with 'Goodbye' or 'Welcome'")
    else:
        print("The string does not start with 'Goodbye' or 'Welcome'")

    Dans ce code, nous avons ajouté deux autres vérifications en utilisant un tuple de préfixes. La première vérification vérifie si la chaîne de caractères commence par "Hello" ou "Hi". La deuxième vérification vérifie si la chaîne de caractères commence par "Goodbye" ou "Welcome".

  2. Enregistrez le fichier prefix_example.py.

  3. Exécutez le script en utilisant la commande python dans le terminal :

    python ~/project/prefix_example.py

    Vous devriez voir la sortie suivante :

    The string starts with 'Hello' or 'Hi'
    The string does not start with 'Goodbye' or 'Welcome'

    Cette sortie montre comment vérifier plusieurs préfixes en utilisant un tuple avec la méthode startswith().

Gérer la sensibilité à la casse

Dans cette étape, vous apprendrez à gérer la sensibilité à la casse lors de la vérification des préfixes de chaîne de caractères. Par défaut, la méthode startswith() est sensible à la casse, ce qui signifie qu'elle fait la distinction entre les lettres majuscules et minuscules. Vous explorerez des techniques pour effectuer des vérifications de préfixes insensibles à la casse.

Pour effectuer une vérification de préfixe insensible à la casse, vous pouvez convertir à la fois la chaîne de caractères et le préfixe en minuscules (ou en majuscules) avant d'utiliser la méthode startswith(). Cela garantit que la comparaison est effectuée sans tenir compte de la casse des lettres.

Modifions le fichier prefix_example.py pour démontrer comment gérer la sensibilité à la casse.

  1. Ouvrez le fichier prefix_example.py dans l'éditeur VS Code.

  2. Modifiez le code pour inclure ce qui suit :

    message = "Hello, LabEx!"
    
    ## Case-sensitive check for "hello"
    if message.startswith("hello"):
        print("The string starts with 'hello' (case-sensitive)")
    else:
        print("The string does not start with 'hello' (case-sensitive)")
    
    ## Case-insensitive check for "hello"
    if message.lower().startswith("hello".lower()):
        print("The string starts with 'hello' (case-insensitive)")
    else:
        print("The string does not start with 'hello' (case-insensitive)")

    Dans ce code, nous avons ajouté deux vérifications pour le préfixe "hello". La première vérification est sensible à la casse et échouera car la chaîne de caractères commence par "Hello" (H majuscule). La deuxième vérification est insensible à la casse et réussira car nous convertissons à la fois la chaîne de caractères et le préfixe en minuscules avant la comparaison.

  3. Enregistrez le fichier prefix_example.py.

  4. Exécutez le script en utilisant la commande python dans le terminal :

    python ~/project/prefix_example.py

    Vous devriez voir la sortie suivante :

    The string does not start with 'hello' (case-sensitive)
    The string starts with 'hello' (case-insensitive)

    Cette sortie montre comment effectuer des vérifications de préfixes insensibles à la casse en convertissant à la fois la chaîne de caractères et le préfixe en minuscules avant d'utiliser la méthode startswith().

Vous pouvez également utiliser la méthode upper() pour convertir les deux chaînes de caractères en majuscules pour une comparaison insensible à la casse. L'essentiel est de s'assurer que les deux chaînes de caractères sont dans la même casse avant d'utiliser startswith().

Résumé

Dans ce laboratoire (lab), vous avez appris à propos des préfixes de chaînes de caractères en Python et à utiliser la méthode startswith() pour vérifier si une chaîne de caractères commence par un préfixe spécifique. Vous avez créé un script Python pour démontrer l'utilisation de startswith(), en vérifiant si une chaîne donnée commence par "Hello" et "Goodbye", et en observant la sortie correspondante en fonction de la correspondance du préfixe.

Le laboratoire a souligné l'importance de comprendre les préfixes de chaînes de caractères pour des tâches telles que la validation de données et l'analyse de commandes (parsing de commandes). Vous avez acquis une expérience pratique dans l'utilisation de la méthode startswith() pour déterminer si une chaîne de caractères commence par une séquence particulière de caractères, et vous avez observé comment la méthode retourne True ou False en fonction de la correspondance.