Como Verificar se uma String Tem um Comprimento Específico em Python

PythonBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se uma string possui um comprimento específico em Python. Isso envolve a compreensão do comprimento de strings e a utilização da função len() para determinar o número de caracteres em uma string, incluindo espaços e caracteres especiais.

Você começará criando um script Python para encontrar o comprimento de strings predefinidas e, em seguida, modificará o script para aceitar a entrada do usuário e calcular o comprimento da string inserida. Finalmente, você aprenderá como comparar o comprimento de uma string com um comprimento desejado para verificar se ele corresponde ao requisito específico.

Entenda o Comprimento da String

Nesta etapa, você aprenderá como determinar o comprimento de uma string em Python. Compreender o comprimento de strings é um conceito fundamental em programação, pois permite manipular e processar dados de texto de forma eficaz.

Em Python, a função len() é usada para encontrar o comprimento de uma string. O comprimento de uma string é o número de caracteres que ela contém, incluindo espaços e caracteres especiais.

Vamos começar com um exemplo simples. Crie um novo arquivo chamado string_length.py no seu diretório ~/project usando o editor VS Code.

## filename: string_length.py
string1 = "Hello, LabEx!"
length1 = len(string1)
print("The length of the string 'Hello, LabEx!' is:", length1)

string2 = "This is a longer string."
length2 = len(string2)
print("The length of the string 'This is a longer string.' is:", length2)

string3 = ""  ## Empty string
length3 = len(string3)
print("The length of the empty string is:", length3)

Salve o arquivo e, em seguida, execute o script usando o seguinte comando no terminal:

python ~/project/string_length.py

Você deve ver a seguinte saída:

The length of the string 'Hello, LabEx!' is: 13
The length of the string 'This is a longer string.' is: 24
The length of the empty string is: 0

Como você pode ver, a função len() retorna o número de caracteres em cada string. Uma string vazia tem um comprimento de 0.

Agora, vamos tentar outro exemplo com entrada do usuário. Modifique o arquivo string_length.py da seguinte forma:

## filename: string_length.py
user_string = input("Enter a string: ")
length = len(user_string)
print("The length of the string you entered is:", length)

Salve o arquivo e execute-o novamente:

python ~/project/string_length.py

O script solicitará que você insira uma string. Digite qualquer string e pressione Enter. Por exemplo:

Enter a string: Python is fun!

A saída será:

The length of the string you entered is: 14

Isso demonstra como você pode usar a função len() para determinar o comprimento de uma string fornecida pelo usuário.

Use a Função len()

Nesta etapa, você aprofundará sua compreensão da função len() aplicando-a a diferentes cenários. Você aprenderá como usá-la com vários tipos de dados e explorará seu comportamento com caracteres especiais e espaços em branco.

Primeiro, vamos examinar como len() lida com strings com caracteres especiais e espaços em branco. Modifique seu arquivo string_length.py no diretório ~/project para incluir o seguinte:

## filename: string_length.py
string1 = "  Hello, LabEx!  "  ## String with leading and trailing spaces
length1 = len(string1)
print("The length of the string with spaces is:", length1)

string2 = "你好,LabEx!"  ## String with Unicode characters
length2 = len(string2)
print("The length of the string with Unicode characters is:", length2)

string3 = "Line1\nLine2"  ## String with a newline character
length3 = len(string3)
print("The length of the string with a newline is:", length3)

Salve o arquivo e execute-o:

python ~/project/string_length.py

Você deve ver a seguinte saída:

The length of the string with spaces is: 17
The length of the string with Unicode characters is: 9
The length of the string with a newline is: 11

Observe que os espaços em branco no início e no final em string1 estão incluídos no comprimento. Além disso, os caracteres Unicode em string2 são contados individualmente como um caractere. O caractere de nova linha \n em string3 também é contado como um caractere.

Agora, vamos explorar como usar len() em conjunto com outros métodos de string. Por exemplo, você pode usá-lo para verificar se uma string está vazia após remover espaços em branco. Modifique seu arquivo string_length.py da seguinte forma:

## filename: string_length.py
user_string = input("Enter a string: ")
stripped_string = user_string.strip()  ## Remove leading/trailing whitespace
length = len(stripped_string)

if length == 0:
    print("The string is empty after removing whitespace.")
else:
    print("The length of the string after removing whitespace is:", length)

Salve o arquivo e execute-o:

python ~/project/string_length.py

Insira uma string com espaços em branco no início e no final:

Enter a string:   Hello

A saída será:

The length of the string after removing whitespace is: 5

Se você inserir apenas espaços, a saída será:

Enter a string:
The string is empty after removing whitespace.

Este exemplo demonstra como você pode combinar a função len() com o método strip() para realizar operações de string mais complexas. O método strip() remove qualquer espaço em branco no início e no final da string.

Compare com o Comprimento Desejado

Nesta etapa, você aprenderá como comparar o comprimento de uma string com um comprimento desejado. Esta é uma tarefa comum em programação, especialmente ao validar a entrada do usuário ou processar dados que devem estar em conformidade com requisitos de comprimento específicos.

Vamos criar um cenário em que queremos garantir que um nome de usuário inserido por um usuário tenha entre 3 e 10 caracteres. Modifique seu arquivo string_length.py no diretório ~/project para incluir o seguinte:

## filename: string_length.py
username = input("Enter a username: ")
length = len(username)

if length < 3:
    print("Username must be at least 3 characters long.")
elif length > 10:
    print("Username must be no more than 10 characters long.")
else:
    print("Username is valid.")

Salve o arquivo e execute-o:

python ~/project/string_length.py

Se você inserir um nome de usuário muito curto:

Enter a username: ab

A saída será:

Username must be at least 3 characters long.

Se você inserir um nome de usuário muito longo:

Enter a username: abcdefghijk

A saída será:

Username must be no more than 10 characters long.

Se você inserir um nome de usuário válido:

Enter a username: abcdef

A saída será:

Username is valid.

Este exemplo demonstra como você pode usar a função len() para verificar se uma string atende a critérios de comprimento específicos.

Agora, vamos considerar um cenário mais complexo em que queremos validar uma senha. A senha deve ter entre 8 e 16 caracteres e deve conter pelo menos um dígito. Modifique seu arquivo string_length.py da seguinte forma:

## filename: string_length.py
password = input("Enter a password: ")
length = len(password)

has_digit = False
for char in password:
    if char.isdigit():
        has_digit = True
        break

if length < 8:
    print("Password must be at least 8 characters long.")
elif length > 16:
    print("Password must be no more than 16 characters long.")
elif not has_digit:
    print("Password must contain at least one digit.")
else:
    print("Password is valid.")

Salve o arquivo e execute-o:

python ~/project/string_length.py

Se você inserir uma senha muito curta:

Enter a password: abcdefg

A saída será:

Password must be at least 8 characters long.

Se você inserir uma senha muito longa:

Enter a password: abcdefghijklmnopq

A saída será:

Password must be no more than 16 characters long.

Se você inserir uma senha que não contém um dígito:

Enter a password: abcdefgh

A saída será:

Password must contain at least one digit.

Se você inserir uma senha válida:

Enter a password: abcdefg1

A saída será:

Password is valid.

Este exemplo demonstra como você pode combinar a função len() com outras técnicas, como percorrer a string para verificar caracteres específicos, para realizar uma validação mais sofisticada.

Resumo

Neste laboratório, você aprendeu como determinar o comprimento de uma string em Python usando a função len(). O laboratório demonstrou como calcular o comprimento de strings predefinidas, incluindo strings vazias, e como obter a entrada de string do usuário e, em seguida, calcular seu comprimento.

Os exemplos fornecidos mostraram que a função len() retorna o número de caracteres em uma string, incluindo espaços e caracteres especiais, e que uma string vazia tem um comprimento de 0. Você também praticou a execução de scripts Python a partir do terminal e a observação da saída.