Como Verificar se uma String Contém Apenas Espaços em Branco em Python

PythonBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se uma string consiste inteiramente em caracteres de espaço em branco (whitespace) em Python. O laboratório começa definindo caracteres comuns de espaço em branco, como espaço, tabulação, nova linha, retorno de carro, tabulação vertical e alimentação de formulário. Em seguida, você criará um script Python para demonstrar esses caracteres e seus efeitos na formatação de texto.

O laboratório irá guiá-lo através do uso do método isspace() para determinar se uma string contém apenas espaço em branco. Finalmente, ele diferenciará entre strings contendo espaço em branco e strings vazias, destacando a importância de entender essas distinções na programação Python.

Definir Caracteres de Espaço em Branco

Nesta etapa, você aprenderá sobre caracteres de espaço em branco (whitespace) em Python. Caracteres de espaço em branco são caracteres que representam espaço vazio. Eles são importantes na programação porque afetam como o código é interpretado e exibido. Entender o espaço em branco é crucial para escrever código Python limpo e legível.

Caracteres comuns de espaço em branco incluem:

  • Espaço (``): O caractere de espaço em branco mais comum, usado para separar palavras e declarações.
  • Tabulação (\t): Usada para indentação, tipicamente representando quatro espaços.
  • Nova Linha (\n): Usada para indicar o fim de uma linha.
  • Retorno de Carro (\r): Usado em sistemas mais antigos para retornar o cursor ao início da linha.
  • Tabulação Vertical (\v): Menos comumente usado, mas ainda um caractere de espaço em branco.
  • Alimentação de Formulário (\f): Usado para avançar para a próxima página na impressão.

Vamos criar um script Python para demonstrar esses caracteres.

  1. Abra o editor VS Code no ambiente LabEx.

  2. Crie um novo arquivo chamado whitespace_demo.py no diretório ~/project.

    touch ~/project/whitespace_demo.py
  3. Abra o arquivo whitespace_demo.py no editor e adicione o seguinte conteúdo:

    ## Demonstrando caracteres de espaço em branco
    
    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")

    Este script define variáveis para cada caractere de espaço em branco e, em seguida, as usa em declarações print() para demonstrar seus efeitos.

  4. Execute o script usando o comando python:

    python ~/project/whitespace_demo.py

    Você deve ver uma saída semelhante à seguinte:

    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

    Observe como cada caractere de espaço em branco afeta a formatação da saída. O caractere de nova linha cria quebras de linha, e o caractere de tabulação cria espaçamento horizontal. O retorno de carro sobrescreve o início da linha. Os caracteres de tabulação vertical e alimentação de formulário podem não ser visíveis dependendo do seu terminal.

Usar o Método isspace()

Nesta etapa, você aprenderá como usar o método isspace() em Python para verificar se uma string consiste apenas em caracteres de espaço em branco. Este método é muito útil para validar a entrada do usuário ou limpar dados.

O método isspace() é um método de string embutido que retorna True se todos os caracteres na string forem caracteres de espaço em branco (espaço, tabulação, nova linha, etc.) e houver pelo menos um caractere. Caso contrário, ele retorna False.

Vamos criar um script Python para demonstrar o método isspace().

  1. Abra o editor VS Code no ambiente LabEx.

  2. Crie um novo arquivo chamado isspace_demo.py no diretório ~/project.

    touch ~/project/isspace_demo.py
  3. Abra o arquivo isspace_demo.py no editor e adicione o seguinte conteúdo:

    ## Demonstrando o método isspace()
    
    string1 = "   "  ## Contém apenas espaços
    string2 = "\t\n"  ## Contém tabulações e quebras de linha
    string3 = "  abc  "  ## Contém espaços e letras
    string4 = ""  ## String vazia
    string5 = "123" ## Contém números
    
    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()}")

    Este script define várias strings com diferentes combinações de caracteres de espaço em branco e não espaço em branco. Em seguida, ele usa o método isspace() para verificar se cada string consiste apenas em caracteres de espaço em branco.

  4. Execute o script usando o comando python:

    python ~/project/isspace_demo.py

    Você deve ver uma saída semelhante à seguinte:

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

    Como você pode ver, isspace() retorna True apenas para strings que contêm apenas caracteres de espaço em branco e não estão vazias.

Diferenciar de Strings Vazias

Nesta etapa, você aprenderá a diferenciar entre strings que contêm apenas espaço em branco e strings vazias em Python. É importante entender a diferença porque isspace() se comporta de maneira diferente para strings vazias.

Como você aprendeu na etapa anterior, o método isspace() retorna True se todos os caracteres em uma string forem caracteres de espaço em branco e a string não estiver vazia. Para uma string vazia (uma string sem caracteres), isspace() retorna False.

Vamos modificar o script isspace_demo.py da etapa anterior para enfatizar essa diferença.

  1. Abra o arquivo isspace_demo.py no editor VS Code no diretório ~/project.

  2. Modifique o script para incluir uma verificação mais explícita de strings vazias:

    ## Demonstrando o método isspace() e strings vazias
    
    string1 = "   "  ## Contém apenas espaços
    string2 = ""  ## String vazia
    
    print(f"'{string1}'.isspace(): {string1.isspace()}")
    print(f"'{string2}'.isspace(): {string2.isspace()}")
    
    if string2:
        print("string2 não está vazia")
    else:
        print("string2 está vazia")
    
    if string1.isspace():
        print("string1 contém apenas espaço em branco")
    else:
        print("string1 não contém apenas espaço em branco")

    Este script agora inclui uma instrução if para verificar se string2 está vazia. Ele também verifica se string1 contém apenas caracteres de espaço em branco.

  3. Execute o script usando o comando python:

    python ~/project/isspace_demo.py

    Você deve ver uma saída semelhante à seguinte:

    '   '.isspace(): True
    ''.isspace(): False
    string2 está vazia
    string1 contém apenas espaço em branco

    Esta saída mostra claramente que isspace() retorna False para uma string vazia, e a instrução if identifica corretamente string2 como uma string vazia.

Resumo

Neste laboratório, você aprendeu sobre caracteres de espaço em branco (whitespace characters) em Python, que são caracteres que representam espaço vazio e afetam a interpretação e exibição do código. O laboratório abordou caracteres de espaço em branco comuns, como espaço, tabulação, nova linha, retorno de carro, tabulação vertical e alimentação de formulário.

Você criou um script Python chamado whitespace_demo.py para demonstrar esses caracteres, definindo variáveis para cada um e usando-as em instruções print() para ilustrar seus efeitos na formatação e saída do texto.