Programação

Trabalho com Strings em Python

Trabalho com Strings em Python

A string é um dos tipos de dados mais populares em python. Podemos usar o tipo de dados string para armazenar quaisquer dados de texto. Em python, qualquer caractere entre aspas simples ou duplas é considerado strings. Esses caracteres podem ser qualquer um dos caracteres Unicode compatíveis com python. Neste tutorial, aprenderemos quase tudo sobre o tipo de dados string em python.

Para seguir este tutorial, é recomendado ter a versão mais recente do Python instalada em seu sistema. Se você tiver uma versão mais antiga do python instalada em seu sistema, pode seguir nosso guia para atualizar o python no Linux. 

Criação de Strings em Python

Para criar uma string em python, precisamos colocar a matriz dos caracteres entre aspas. Python trata as aspas simples e duplas como iguais, então podemos usar qualquer uma delas ao criar uma string. Veja os exemplos abaixo onde criamos uma string, armazenamos em variáveis ​​e depois as imprimimos.

# criando uma string
saudação = "Olá, mundo"
# imprimindo a string
imprimir (saudação)

Ao executar o código acima, você obterá a saída Olá Mundo.

criando strings em python

Neste código, criamos uma string Olá Mundoe o armazenou em uma variável chamada saudações. Então usamos a função de impressão do Python para exibir a string armazenada na variável. Você obterá a seguinte saída ao executar o código. Também podemos criar uma string multilinha usando aspas triplas no código de exemplo abaixo.

var = "" "Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incidunt
ut labore et dolore magna aliqua."" "
imprimir (var)

Aqui está o resultado.

string multilinha em python

Em Python, strings são matrizes de bytes que representam caracteres Unicode. Mas não tem nenhum tipo de dados embutido para caracteres únicos como em C ou C++. Qualquer string com o comprimento de um é considerada um caractere.

Comprimento das Strings 

Em muitas situações, podemos precisar calcular algum comprimento de string. Existe uma função incorporada que pode calcular o comprimento de uma string. A função que usaremos é a len () função.

Para ver um exemplo prático de o len () função, execute o seguinte código em seu IDE Python.

var = "Isto é uma string"
print ("O comprimento da string é:", len (var))

Resultado:

comprimento da string usando o método len ()

Também podemos usar o loop for python, que discuti neste tutorial, para calcular o comprimento de uma string. 

Exemplo:

var = "Isto é uma string"
contagem = 0
para i in var:
contagem = contagem + 1
print ("O comprimento da string é:", contagem)

Resultado:

comprimento da corda manualmente usando loop for

String Concatenation

A concatenação de strings é a fusão ou junção de duas strings. Podemos juntar duas strings facilmente usando o operador +. Vejamos um exemplo de junção de duas strings em python.

# criando duas strings
string1 = "Olá"
string2 = "Mundo"
# mesclando as duas strings
saudação = string1 + string2
imprimir (saudação)

No código acima, criamos duas strings, a saber "Hello" e "World", e as armazenamos em duas variáveis ​​chamadas string1 e string2. Em seguida, usamos o operador + para juntar as duas strings e armazená-las em uma variável chamada saudação e exibi-la usando o impressão() função.

Resultado:

concatenando duas strings

Repetição de cordas

Podemos repetir uma string várias vezes em python usando o operador *. Por exemplo, para imprimir a string “Fosslinux” duas vezes, precisamos escrever o seguinte código.

imprimir ("Fosslinux" * 2)

Resultado:

repetição de cordas

Strings de formatação

É fácil fazer a formatação de strings em Python. Existem três maneiras:

1. Estilo de formatação antigo

O estilo antigo de formatação de strings é feito usando o operador%. Precisamos usar símbolos especiais como “% s”, “% d”, “% f”, “%.f ”. com a string e, em seguida, especifique a tupla de dados que queremos formatar naquele lugar. Vamos ver quais são os dados aceitos pelos símbolos acima.

Por exemplo, veja o código abaixo. Você pode copiar e executar o código em seu IDE python favorito.

string1 = "É uma string formatada com inteiro% d"% (1)
string2 = "É uma string formatada com string% s"% ("Fosslinux")
string3 = "É uma string formatada com dados flutuantes% f"% (1.01)
imprimir (string1)
imprimir (string2)
imprimir (string3)

Resultado:

o estilo antigo de formatação de string em python

Como podemos ver na saída, formatamos as strings com os dados inteiro, flutuante e string. Este método de formatação de strings é o método mais antigo, mas é menos usado hoje em dia.

2. Usando o método format ()

Esta é uma nova técnica de formatação de string introduzida no Python 3. As funções format () pegam os dados como um argumento e os substituem na string onde o marcador estão presentes. 

Exemplo:

string1 = "É uma string formatada com número inteiro ".formato (1)
string2 = "É uma string formatada com string ".formato ("Fosslinux")
string3 = "É uma string formatada com dados flutuantes ".formato (1.01)
imprimir (string1)
imprimir (string2)
imprimir (string3)
print (" é um ótimo site para aprender e ".formato ("FossLinux", "Linux", "Python"))

Obteremos a string formatada como a saída ao executar o código acima, conforme mostrado na imagem abaixo.

formatação de string usando a função format ()

3. cordas f

A técnica de formatação de string mais recente é a interpolação de string ou f-strings, introduzida na versão 3 do python.6. Podemos especificar um nome de variável diretamente em uma string f, e o interpretador Python irá substituir o nome da variável pelo valor de dados correspondente a ela. As strings f começam com a letra f, e podemos injetar os dados em suas posições correspondentes diretamente. Esta técnica de formatação de strings se tornou bastante popular nos últimos dias. Para ver uma demonstração de seu funcionamento, copie o código abaixo e execute-o em seu IDE python.

string1 = f "É uma string formatada com número inteiro 1"
string2 = f "É uma string formatada com string 'fosslinux'"
string3 = f "É uma string formatada com dados flutuantes 0.01 "
imprimir (string1)
imprimir (string2)
imprimir (string3)
a = "Fosslinux"
b = "Linux"
c = "Python"
imprimir (f "a é um ótimo site para aprender b e c")

Usamos o método de interpolação de strings para formatar strings no código acima. As strings iniciadas com o caractere f são strings f. A f-string tornou nosso trabalho simples, e podemos escrever as variáveis ​​diretamente nas strings, fornecendo variáveis ​​sob o marcador de posição. Ao executar o código acima, obteremos a seguinte saída.

formatação de strings usando f-strings

Verifique se há uma substring

Muitas vezes, podemos querer verificar a existência de um personagem ou uma substring em uma string. Isso pode ser feito usando o dentro e não em Palavras-chave Python. Por exemplo, para verificar se Olá está presente na corda Olá Mundo, precisamos executar o seguinte código.

x = "olá" em "olá, mundo"
imprimir (x)

Ao executar o código acima em um IDE python, obteremos o valor booleano Verdadeiro como uma saída, o que significa que a substring "hello" está presente no "hello world".

verifique se há uma substring em uma string

Vamos ver outra demonstração para saber como funciona de uma maneira melhor.

string = "FossLinux é um ótimo site para aprender Linux e Python"
imprimir ("Fosslinux" na string)
imprimir ("FossLinux" na string)
imprimir ("Foss" na corda)
imprimir ("Pyt" na string)
print ("hon" na string)
print ("Python" não está na string)

Resultado:

verifique se há uma substring em uma string usando a palavra-chave

No código acima, usamos tanto o dentro e a não em palavras-chave para verificar uma substring na string pai.

String como uma sequência de caracteres

A string python é uma sequência de caracteres; eles são quase semelhantes a outras sequências python ordenadas como lista, tupla, etc. Podemos extrair caracteres individuais das strings de várias maneiras, como descompactá-los usando variáveis ​​e indexação que discutirei no próximo tópico. Podemos desempacotar as strings atribuindo-as a variáveis. Para ver como funciona, basta copiar e executar o seguinte código em seu IDE python favorito.

idioma = 'Fosslinux'
# descompactando a string em variáveis
a, b, c, d, e, f, g, h, i = idioma
imprimir (a)
imprimir (b)
imprimir (c)
imprimir (d)
imprimir (e)
imprimir (f)
imprimir (g)
imprimir (h)
imprimir (i)

Resultado:

descompactando caracteres usando variáveis

Strings de indexação

A indexação de string é uma técnica fundamental e popular pela qual podemos acessar o caractere de uma string e realizar muitas operações de string com muita facilidade. Na programação, a contagem começa com zero (0), portanto, para obter o primeiro caractere de uma string, precisamos fornecer zero no índice. Para ver um exemplo prático de indexação, copie e execute o seguinte código em um IDE Python.

string = "Fosslinux"
imprimir (string [0])
imprimir (string [1])
imprimir (string [2])
imprimir (string [3])

No código acima, primeiro criamos uma string chamada Fosslinux, e então usamos a indexação de string Python para obter o primeiro, segundo, terceiro e quarto caracteres da string. Obteremos a seguinte saída no terminal ao executar o código.

strings de indexação

Python também suporta indexação negativa, o que é muito útil, onde podemos começar a contar do lado direito. Por exemplo, para obter o penúltimo caractere de uma string "Fosslinux", precisamos escrever o código abaixo.

string = "Fosslinux"
print ("O penúltimo termo da string é:", string [-2])

Ao executar o código, obteremos o penúltimo termo da string “Fosslinux”, conforme mostrado na imagem abaixo.

indexação negativa em strings Python

Obtendo o último termo de uma string

Às vezes, podemos querer obter o último termo da string. Temos duas maneiras de fazer isso: a primeira usa a indexação negativa e a segunda usa a função len () com indexação.

Para obter o último termo da string usando indexação negativa, observe o código abaixo.

string = "Fosslinux"
print ("O último termo da string é:", string [-1])

Resultado:

último termo usando indexação negativa

Também podemos usar a função len () com indexação para obter o último termo. Para fazer isso, precisamos calcular o comprimento da string e, em seguida, encontrar o caractere indexando o valor, que é um a menos que o comprimento da string. Veja o exemplo abaixo.

string = "Fosslinux"
comprimento = len (string)
last_index = length-1
print ("O último termo da string é:", string [last_index])

No código acima, primeiro criamos uma string e a armazenamos em uma variável chamada fragmento. Em seguida, calculamos o comprimento da string usando o método len (). Como a indexação em python começa com zero, precisamos subtrair um do comprimento. Em seguida, passamos como um índice para o fragmento. Assim, obtemos o último caractere da string. 

Resultado:

último termo calculando o comprimento

Fatias de corte

Em Python, temos uma ótima técnica, uma forma estendida de indexação conhecida como corte de strings. Isso pode ser usado para cortar uma string em uma substring. Para fazer o fatiamento, precisamos fornecer o número de índice do primeiro caractere e o último caractere da substring no índice da string, colocando um ponto-e-vírgula no meio deles. Para uma demonstração prática, veja o código de exemplo abaixo.

string = "Fosslinux"
imprimir (string [1: 6])
imprimir (string [0: 4])

Resultado:

fatiar cordas

Pular personagens ao fatiar

Também podemos pular caracteres enquanto cortamos uma string. Durante o corte de uma string, temos a seguinte sintaxe.

string [start: stop: step]

O início e o fim são os números de índice padrão que usamos na sintaxe acima até agora. O parâmetro da etapa aceita um número inteiro, que é usado para fornecer o número de caracteres a serem deixados em cada etapa.

Invertendo cordas

Podemos reverter uma string facilmente usando o método de fatiamento. Por exemplo, veja o código abaixo. Copie o código abaixo em seu Python IDE e execute-o.

string = "Fosslinux"
print ("A string reversa de", string, "é", string [:: - 1])

Este código irá reverter a string “Fosslinux.”Ao executar o código, obteremos a seguinte saída.

corda reversa

Caráter de fuga em cordas

Caracteres de escape na programação é uma ótima maneira de adicionar caracteres não imprimíveis em strings. Por exemplo, para adicionar o caractere de nova linha em strings, usamos o caractere de escape “\ n”. Veja o código abaixo para uma demonstração.

print ("\ n \ n \ n Olá \ n \ n Mundo")

Ao executar o código, obteremos a seguinte saída.

caracteres de escape em strings

Como podemos ver no código, as novas linhas são adicionadas automaticamente no lugar de “\ n”. É aí que a sequência de escape entra em jogo. Existem muitos caracteres de sequência presentes em python. Vou listar todos eles aqui; você pode experimentar todos eles para ver como cada um funciona.

Métodos de String

Aprendemos muitas coisas sobre strings python, mas esta parte é muito mais útil do que qualquer outra parte deste artigo. Python vem com um grande número de funções integradas para trabalhar com strings. Ao usá-los, podemos facilmente realizar muitas operações em strings. 

Casos de Transformação de Cordas

Temos algumas funções integradas que podem ser usadas para transformar os casos das strings. Vamos discutir todos eles.

fragmento.capitalizar()

Este método é usado para capitalizar na string alvo. Quando usamos o método como fragmento.capitalizar, ele retornará a string colocando-a em maiúscula, i.e., transformando o primeiro caractere em maiúsculas e todos os outros caracteres em minúsculas. Para ver uma demonstração prática de sua cópia de trabalho e executar o seguinte código em seu IDE Python.

string = "fosslinux"
print (string.capitalizar())
Usamos o capitalizar() método do objeto String, colocando-o em letras maiúsculas. Ao executar o código, obteremos a seguinte saída.
capitaliza uma string

.superior()

Este método é usado para transformar uma string em maiúsculas, i.e., capitaliza todos os caracteres presentes na string. 

Exemplo:

string = "Fosslinux"
print (string.superior())

Resultado:

transformar uma string em maiúscula

fragmento.diminuir()

Este método é usado para transformar uma string em minúsculas, i.e., muda todos os caracteres presentes na string para minúsculas. 

Exemplo:

string = "FOSSLinux"
print (string.diminuir())

Resultado:

transformar uma string em maiúscula

fragmento.swapcase ()

Este é um ótimo método para trocar as maiúsculas e minúsculas de caracteres de uma string. Ele converte os caracteres minúsculos em maiúsculas e vice-versa da string. Para ver seu funcionamento, basta copiar e executar o seguinte código.  

string = "FOSSlinux"
print (string.swapcase ())

Resultado:

trocando caso de string python

fragmento.título()

Novamente, este é um método excelente na manipulação de strings, pois transforma o primeiro caractere de cada palavra presente na string em maiúsculas. 

Exemplo:

string = "Fosslinux é ótimo"
print (string.título())

Resultado:

transformando string em título

Você deve ter notado a diferença entre os capitalizar() e a título() método. O capitalizar() método só coloca em maiúscula o primeiro caractere da primeira palavra da string, enquanto o título() método coloca em maiúscula o primeiro caractere de cada palavra presente na string.

Classificação de Personagem

Também temos métodos para verificar a caixa de uma string, seja maiúscula, minúscula, etc. Vamos discuti-los brevemente com exemplos.

fragmento.isalnum ()

Este método é usado para verificar se uma string contém apenas números alfanuméricos ou não, i.e., todos os seus caracteres devem ser números ou alfabetos, mas nenhum outro caractere, incluindo espaços em branco. 

Exemplo:

string1 = "Fosslinux123"
string2 = "Fosslinux é ótimo"
string3 = "Fosslinux @ # 123"
imprimir (string1.isalnum ()) # contém apenas alfabeto e números
imprimir (string2.isalnum ()) # contém espaços em branco
imprimir (string3.isalnum ()) # contém caracteres especiais

Resultado:

verificação de números alfanuméricos em uma string

fragmento.isalpha ()

Este método de string é semelhante ao método acima, mas verifica apenas os alfabetos, não os números da string, o que significa que a string deve conter apenas alfabetos. Por exemplo, execute o seguinte código.

string1 = "Fosslinux123"
string2 = "Fosslinux"
imprimir (string1.isalpha ()) # contém alfabeto e números
imprimir (string2.isalpha ()) # contém apenas o alfabeto

Obteremos False para o primeiro porque contém números, e obteremos True para o próximo, pois contém apenas alfabetos. 

Resultado:

verificando alfabetos em strings

fragmento.isdigit ()

Este método é semelhante ao anterior, mas em vez de alfabetos, ele verifica se a string consiste apenas de dígitos. Retorna True se todos os caracteres presentes em uma string são dígitos; senão retorna falso.

fragmento.isidentifier ()

Este também é um ótimo método de string de python. Usando este método, podemos verificar se uma string é um identificador Python válido ou não. Eu discuti as regras para escolher o identificador de python válido nos fundamentos do tutorial de python. 

Exemplo:

string1 = "Fosslinux123"
string2 = "123Fosslinux"
string3 = "_Fosslinux"
string4 = "Fosslinux @ 1234"
imprimir (string1.isidentifier ()) # True
imprimir (string2.isidentifier ()) # False (começa com números)
imprimir (string3.isidentifier ()) # True
imprimir (string4.isidentifier ()) # False (contém caracteres especiais @)

Resultado:

verificando o identificador na string

fragmento.é inferior()

Este método de string verifica se todos os caracteres da string estão em minúsculas. Se sim, retorna True, senão retorna False.

fragmento.isupper ()

Este método de string verifica se todos os caracteres presentes em uma string estão em maiúsculas. Se sim, então retorna True, senão retorna False.

fragmento.istitle ()

O istitle () método da string retornará True se o primeiro alfabeto de todas as palavras presentes em uma string for maiúsculo e todos os outros caracteres estiverem em minúsculas.

fragmento.isprintable ()

Retorna True se todos os caracteres presentes na string são imprimíveis, i.e., caracteres sem escape; caso contrário, retorna False. Para ver como funciona, execute o seguinte código.

string1 = "Fosslinux"
string2 = "\ nFosslinux"
imprimir (string1.isprintable ()) # Verdadeiro
imprimir (string2.isprintable ()) # False (contém o caractere de nova linha)

Resultado:

verificando caracteres imprimíveis

fragmento.isspace ()

O fragmento.isspace () o método retornará True se todos os caracteres da string forem caracteres de espaço em branco; caso contrário, ele retornará False.

Outras funções importantes

fragmento.contar()

O método count () do objeto String é usado para obter o número de vezes que um valor especificado ocorre. 

Exemplo:

string = "Fosslinux"
print (string.contagem ("s"))

No código acima, usamos o contar() método para obter o número de vezes que o caractere “s” aparece na string “Fosslinux.”

Resultado:

contando caracteres especificados na string

fragmento.começa com()

Este método de string verifica se a string começa com a substring fornecida no argumento do método. Para ver uma demonstração prática de seu funcionamento, copie e execute o código abaixo em um IDE Python.

string = "Fosslinux"
print (string.começa com ("F"))
print (string.começa com ("Fo"))
print (string.começa com ("Foss"))
print (string.começa com ("Fosss"))

Ao executar o código acima, obteremos True para os três primeiros, enquanto o último retorna False, como mostrado na imagem de saída abaixo.

a corda começa com

fragmento.termina com()

Isso é semelhante ao método acima, mas a diferença é que enquanto o anterior verifica o início de uma string, ele verifica no final da string.

fragmento.achar()

O método find () do objeto String é um método importante para encontrar um caractere ou substring em uma string. Ele aceita a substring como um argumento e retorna o índice da substring, se presente na string; senão retorna -1. 

Exemplo:

string = "Fosslinux"
print (string.find ("lin"))

Ao executar o código acima, obteremos a saída como 4, que é o índice inicial da substring “lin” em “Fosslinux.”

função encontrar string

fragmento.substituir()

A sintaxe deste método é substituir (antigo, novo). Leva dois argumentos; um é o substring antigo e o novo é o substring. Ele substitui toda a substring antiga pela nova substring em toda a string.

Exemplo:

string = "Fosslinux"
print (string.substituir ("Foss", ""))
Iremos obter apenas o Linux impresso na tela como o Foss é substituído por um espaço em branco ao executar o código acima.  Resultado: 
função de substituição de string

fragmento.dividir()

Este método usa o separador como argumento, divide a string de acordo com o separador e retorna uma lista python. 

Exemplo:

string = "Fosslinux é um ótimo lugar para começar a aprender Linux e Python"
print (string.dividir(" "))
Ao executar o código acima, obteremos uma lista das palavras da string. Como usamos a função de divisão com espaço em branco como argumento, ela divide a string quando obtém o espaço em branco.  Resultado: 
função de divisão de string python

fragmento.faixa()

Este método é usado para remover todos os espaços em branco à esquerda e à direita da string.

Conclusão

Isso é tudo sobre Strings e seu uso em Python. Percorrer o tutorial lhe dará uma ideia de como é útil trabalhar com strings em python. Você também pode querer ver o tutorial sobre como usar o loop for em python, um loop final para iteração em python. Finalmente, antes de sairmos, você pode querer dar uma olhada no método para reverter uma string em Python, que é útil ao lidar com strings.

Como instalar o League Of Legends no Ubuntu 14.04
Se você é fã de League of Legends, esta é uma oportunidade para testar o funcionamento de League of Legends. Observe que LOL é suportado no PlayOnLinu...
Instale o último jogo de estratégia OpenRA no Ubuntu Linux
OpenRA é um motor de jogo de estratégia em tempo real Libre / Free que recria os primeiros jogos Westwood como o clássico Command & Conquer: Red Alert...
Instale o emulador Dolphin mais recente para Gamecube e Wii no Linux
O Dolphin Emulator permite que você jogue seus jogos de Gamecube e Wii escolhidos em computadores pessoais Linux (PC). Sendo um emulador de jogo disp...