Comment vérifier si une chaîne de caractères est composée uniquement d'espaces 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 (lab), vous apprendrez à vérifier si une chaîne de caractères est entièrement composée de caractères d'espacement (whitespace) en Python. Le laboratoire commence par la définition des caractères d'espacement courants tels que l'espace, la tabulation, le saut de ligne, le retour chariot, la tabulation verticale et le saut de page. Vous créerez ensuite un script Python pour démontrer ces caractères et leurs effets sur la mise en forme du texte.

Le laboratoire vous guidera dans l'utilisation de la méthode isspace() pour déterminer si une chaîne ne contient que des caractères d'espacement. Enfin, il fera la distinction entre les chaînes contenant des caractères d'espacement et les chaînes vides, soulignant l'importance de comprendre ces différences dans la programmation Python.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/FileHandlingGroup -.-> python/file_operations("File Operations") subgraph Lab Skills python/strings -.-> lab-559582{{"Comment vérifier si une chaîne de caractères est composée uniquement d'espaces en Python"}} python/build_in_functions -.-> lab-559582{{"Comment vérifier si une chaîne de caractères est composée uniquement d'espaces en Python"}} python/file_operations -.-> lab-559582{{"Comment vérifier si une chaîne de caractères est composée uniquement d'espaces en Python"}} end

Définir les caractères d'espacement (Whitespace)

Dans cette étape, vous apprendrez à connaître les caractères d'espacement en Python. Les caractères d'espacement sont des caractères qui représentent des espaces vides. Ils sont importants en programmation car ils influencent la façon dont le code est interprété et affiché. Comprendre les caractères d'espacement est essentiel pour écrire un code Python propre et lisible.

Les caractères d'espacement courants incluent :

  • Espace ( ) : Le caractère d'espacement le plus courant, utilisé pour séparer les mots et les instructions.
  • Tabulation (\t) : Utilisée pour l'indentation, généralement représentant quatre espaces.
  • Saut de ligne (\n) : Utilisé pour indiquer la fin d'une ligne.
  • Retour chariot (\r) : Utilisé dans les anciens systèmes pour ramener le curseur au début de la ligne.
  • Tabulation verticale (\v) : Moins couramment utilisée, mais toujours un caractère d'espacement.
  • Saut de page (\f) : Utilisé pour passer à la page suivante lors de l'impression.

Créons un script Python pour démontrer ces caractères.

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

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

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

    ## Demonstrating whitespace characters
    
    space_char = " "
    tab_char = "\t"
    newline_char = "\n"
    carriage_return_char = "\r"
    vertical_tab_char = "\v"
    form_feed_char = "\f"
    
    print("This", space_char, "is", space_char, "separated", space_char, "by", space_char, "spaces.")
    print("This\tis\tseparated\tby\ttabs.")
    print("This" + newline_char + "is" + newline_char + "on" + newline_char + "multiple" + newline_char + "lines.")
    print("This" + carriage_return_char + "will overwrite the beginning of the line.")
    print("Vertical" + vertical_tab_char + "Tab")
    print("Form" + form_feed_char + "Feed")

    Ce script définit des variables pour chaque caractère d'espacement, puis les utilise dans des instructions print() pour démontrer leurs effets.

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

    python ~/project/whitespace_demo.py

    Vous devriez voir une sortie similaire à ce qui suit :

    This   is   separated   by   spaces.
    This    is      separated       by      tabs.
    This
    is
    on
    multiple
    lines.
     will overwrite the beginning of the line.
    Vertical Tab
    Form Feed

    Remarquez comment chaque caractère d'espacement affecte la mise en forme de la sortie. Le caractère de saut de ligne crée des sauts de ligne, et le caractère de tabulation crée un espacement horizontal. Le retour chariot écrase le début de la ligne. Les caractères de tabulation verticale et de saut de page peuvent ne pas être visibles selon votre terminal.

Utiliser la méthode isspace()

Dans cette étape, vous apprendrez à utiliser la méthode isspace() en Python pour vérifier si une chaîne de caractères est composée uniquement de caractères d'espacement (whitespace). Cette méthode est très utile pour valider les entrées utilisateur ou nettoyer des données.

La méthode isspace() est une méthode intégrée pour les chaînes de caractères qui renvoie True si tous les caractères de la chaîne sont des caractères d'espacement (espace, tabulation, saut de ligne, etc.) et qu'il y a au moins un caractère. Sinon, elle renvoie False.

Créons un script Python pour démontrer la méthode isspace().

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

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

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

    ## Demonstrating the isspace() method
    
    string1 = "   "  ## Contains only spaces
    string2 = "\t\n"  ## Contains tabs and newlines
    string3 = "  abc  "  ## Contains spaces and letters
    string4 = ""  ## Empty string
    string5 = "123" ## Contains numbers
    
    print(f"'{string1}'.isspace(): {string1.isspace()}")
    print(f"'{string2}'.isspace(): {string2.isspace()}")
    print(f"'{string3}'.isspace(): {string3.isspace()}")
    print(f"'{string4}'.isspace(): {string4.isspace()}")
    print(f"'{string5}'.isspace(): {string5.isspace()}")

    Ce script définit plusieurs chaînes avec différentes combinaisons de caractères d'espacement et de caractères non d'espacement. Il utilise ensuite la méthode isspace() pour vérifier si chaque chaîne est composée uniquement de caractères d'espacement.

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

    python ~/project/isspace_demo.py

    Vous devriez voir une sortie similaire à ce qui suit :

    '   '.isspace(): True
    '
    '.isspace(): True
    '  abc  '.isspace(): False
    ''.isspace(): False
    '123'.isspace(): False

    Comme vous pouvez le voir, isspace() renvoie True uniquement pour les chaînes qui contiennent uniquement des caractères d'espacement et qui ne sont pas vides.

Différencier des chaînes vides

Dans cette étape, vous apprendrez à différencier les chaînes de caractères contenant uniquement des caractères d'espacement (whitespace) des chaînes vides en Python. Il est important de comprendre la différence car la méthode isspace() se comporte différemment pour les chaînes vides.

Comme vous l'avez appris dans l'étape précédente, la méthode isspace() renvoie True si tous les caractères d'une chaîne sont des caractères d'espacement et que la chaîne n'est pas vide. Pour une chaîne vide (une chaîne sans caractères), isspace() renvoie False.

Modifions le script isspace_demo.py de l'étape précédente pour souligner cette différence.

  1. Ouvrez le fichier isspace_demo.py dans l'éditeur VS Code dans le répertoire ~/project.

  2. Modifiez le script pour inclure une vérification plus explicite des chaînes vides :

    ## Demonstrating the isspace() method and empty strings
    
    string1 = "   "  ## Contains only spaces
    string2 = ""  ## Empty string
    
    print(f"'{string1}'.isspace(): {string1.isspace()}")
    print(f"'{string2}'.isspace(): {string2.isspace()}")
    
    if string2:
        print("string2 is not empty")
    else:
        print("string2 is empty")
    
    if string1.isspace():
        print("string1 contains only whitespace")
    else:
        print("string1 does not contain only whitespace")

    Ce script inclut maintenant une instruction if pour vérifier si string2 est vide. Il vérifie également si string1 ne contient que des caractères d'espacement.

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

    python ~/project/isspace_demo.py

    Vous devriez voir une sortie similaire à ce qui suit :

    '   '.isspace(): True
    ''.isspace(): False
    string2 is empty
    string1 contains only whitespace

    Cette sortie montre clairement que isspace() renvoie False pour une chaîne vide, et que l'instruction if identifie correctement string2 comme une chaîne vide.

Résumé

Dans ce laboratoire (lab), vous avez appris à connaître les caractères d'espacement (whitespace) en Python, qui sont des caractères représentant des espaces vides et qui influencent l'interprétation et l'affichage du code. Le laboratoire a couvert les caractères d'espacement courants tels que l'espace, la tabulation, le saut de ligne, le retour chariot, la tabulation verticale et le saut de page.

Vous avez créé un script Python nommé whitespace_demo.py pour démontrer ces caractères en définissant des variables pour chacun d'eux et en les utilisant dans des instructions print() pour illustrer leurs effets sur la mise en forme et la sortie du texte.