Métodos para Manipular Strings em Python
Trabalhar com strings em Python é uma atividade comum para muitos. E o Python conta com vários métodos muito úteis para nos auxiliar nessa atividade. Saber usá-los economiza tempo, nos ajuda a automatizar tarefas rotineiras e torna os códigos mais concisos e inteligentes. Muitos desses métodos também podem fornecer contribuições valiosas durante o pré-processamento de textos para o treinamento de modelos de inteligência artificial. Portanto, vamos a eles.
isalpha()
O método isalpha() retorna True para strings contendo apenas letras (a-z ou A-Z). Ele retorna False para strings contendo qualquer caractere não alfabético, incluindo espaços, números, pontuação ou para strings vazias. Veja alguns exemplos ilustrativos:
minha_string1 = "São Paulo"
print(minha_string1.isalpha())
# resultado: False
minha_string2 = "Fortaleza"
print(minha_string2.isalpha())
# resultado: True
Nos exemplos acima, a presença do espaço em São Paulo fez o método retornar False.
isdigit()
O método isdigit() retorna True apenas para strings contendo dígitos numéricos (0-9). Ele retorna False para strings contendo qualquer caractere que não seja um dígito, incluindo sinais negativos ou pontos decimais. Ele também retorna False para uma string vazia. Abaixo mostramos alguns casos ilustrativos:
minha_string_numerica = '1223344' # string apenas com dígitos
print(minha_string_numerica.isdigit())
# resultado: True
# exemplos que retorna False
minha_string = '100,00' # vírgulas e pontos retornam False
print(minha_string.isdigit())
# resultado: False
minha_string_negativa = '-100' # sinal negativo retorna False
print(minha_string_negativa.isdigit())
# resultado: False
isnumeric()
Esse método retorna True apenas se todos os caracteres da string são numéricos e a string não está vazia. Porém, diferentemente do método isdigit() mostrado acima, o método isnumeric() reconhece dígitos e valores numéricos de outras línguas (como algarismos romanos) e caracteres que representam números (como frações e potências). Mas ele retorna False para strings com espaços, pontuações, letras e sinais negativos. Veja abaixo:
print("12345".isnumeric()) # resultado: True
print("½".isnumeric()) # resultado: True
print("2²".isnumeric()) # resultado: True
print("-122".isnumeric()) # resultado: False
isidentifier()
Este método retorna True se a string for um identificador válido conforme as regras de nomenclatura do Python para variáveis, funções, classes, etc. Ou seja, ele retorna True se a string começa com uma letra (a-z, A-Z) ou sublinhado (_) e contém apenas caracteres alfanuméricos (a-z, A-Z, 0-9) e sublinhados.
print("oi".isidentifier()) # resultado: True
print("123abc".isidentifier()) # resultado: False
print("_def".isidentifier()) # resultado: True
islower()
O método islower() retorna True apenas se todos os caracteres alfabéticos na string são minúsculos, como ilustrado abaixo:
print("PYTHON".islower()) # resultado: False
print("Python".islower()) # resultado: False
print("python".islower()) # resultado: True
istitle()
O método istitle() verifica se a string segue as regras de uma string com maiúsculas e minúsculas. Ele retorna True apenas se o primeiro caractere de cada palavra é maiúsculo e os demais são minúsculos.
print("Bom dia".istitle()) # resultado: False
print("Bom Dia".istitle()) # resultado: True
print("BOM DIA".istitle()) # resultado: False
isupper()
O método isupper() retorna True quando todos os caracteres alfabéticos de uma string estão com letras maiúsculas. Se todos os caracteres alfabéticos forem maiúsculos, ele retorna True mesmo na presença de espaços e outros caracteres como dígitos. Veja abaixo alguns exemplos:
print("Bom dia".isupper()) # resultado: False
print("Bom Dia".isupper()) # resultado: False
print("BOM DIA".isupper()) # resultado: True
print("BOM DIA 123".isupper()) # resultado: True
isprintable()
Esse método retorna True se todos os caracteres na string podem ser impressos ou se a string está vazia. Caracteres imprimíveis são aqueles que ocupam espaço de impressão, incluindo caracteres regulares e espaço, mas excluindo caracteres de controle. Nos exemplos abaixo, veja que o caractere de controle \n não é imprimível.
print("Oi Python".isprintable()) # resultado: True
print("Oi \n Python".isprintable()) # resultado: False
print("\n".isprintable()) # resultado: False
print(" ".isprintable()) # resultado: True
isspace()
Método que retorna True se todos os caracteres de uma string são espaços em branco. Os caracteres de espaço em branco incluem espaço, tabulação, nova linha, retorno, alimentação de formulário e tabulação vertical. Ele retorna False se a string está vazia. Abaixo, note que a presença de um único caractere que não é um espaço em branco faz o método retornar False.
print("\t\n ".isspace()) # resultado: True
print("".isspace()) # resultado: False
print("\n".isspace()) # resultado: True
print(" ".isspace()) # resultado: True
print(" \n a \n".isspace()) # resultado: False
Veja também:
Aprenda como mudar os itens de uma lista em Python
Concatenações com join() para strings em Python
O que é operador ternário em Python?
F-strings em Strings Multilinhas
Decodificação de strings em Python com decode()
Métodos para Manipular Strings em Python
Módulo Getpass para Prompts de Senhas
Aprenda a comparar textos com Python com Difflib
Encontrou algum erro ou quer fazer uma sugestão? Por favor, entre em contato usando nosso formulário de contatos.