Confira diferentes maneiras de remover o último caractere da string em Python
últimas postagens
Fatiamento
Python suporta fatiamento de índice negativo junto com fatiamento positivo. O índice negativo começa de -1 a -(iterable_length). Usaremos o fatiamento negativo para obter os elementos do final de um iterável.
- O índice -1 obtém o último elemento do iterável.
- O índice -2 obtém o 2º último elemento do iterável.
- E continua até o primeiro elemento.
Vamos ver um exemplo.
name="etechpt.com" print(name[-1]) print(name[-len(name)])
O programa acima imprimirá os últimos e primeiros caracteres da string usando indexação negativa.
Como removemos o último elemento da string usando o fatiamento? É apenas uma linha de código. Sabemos como extrair uma parte da string usando o fatiamento. Vamos aplicar a mesma coisa com um índice negativo para remover o último caractere da string.
- Fatie a string do início ao último elemento antes.
buggy_name="GeekflareE" name = buggy_name[:-1] print(name)
Vamos nos concentrar na segunda linha do código acima. Essa é a linha mágica no código. Como um fatiamento tradicional, ele extrai a substring do índice inicial para o último, mas o fatiamento ignora o segundo elemento de índice fornecido.
Você receberá etechpt.com como saída se executar o código acima.
tira
O método de string rstrip remove os caracteres do lado direito da string que é fornecida a ele. Assim, podemos usá-lo para remover o último elemento da string. Não precisamos escrever mais do que uma linha de código para remover o último caractere da string.
- Dê o último elemento ao método strip, ele retornará a string removendo o último caractere.
Vamos ver o trecho de código.
buggy_name="GeekflareE" name = buggy_name.rstrip(buggy_name[-1]) print(name)
Demos o último caractere da string ao método strip. Ele remove o último caractere da string e retorna uma cópia sem o último caractere.
Ele imprimirá etechpt.com no console, se você executá-lo.
Exemplo Prático – retire a última palavra
Sim, vamos aplicar o que temos nas seções anteriores em um exemplo prático.
Digamos que temos um arquivo que contém várias linhas de texto. E precisamos remover a última palavra de cada linha do arquivo.
Siga os passos abaixo para escrever o programa.
- Crie um arquivo chamado random_text.txt e coloque algumas linhas de texto nele.
- Inicialize uma variável de dados como uma string vazia.
- Abra o arquivo usando o método with e open no modo de leitura e gravação.
- Leia o conteúdo do arquivo usando o método readlines.
- Iterar sobre cada linha do conteúdo.
- Divida a linha de texto usando o método split em palavras.
- Remova a última palavra usando um dos métodos acima.
- Junte o resultado para formar uma string.
- Anexe o resultado à variável de dados.
- Remova os dados do arquivo usando os métodos buscar e truncar.
- Grave os dados mais recentes no arquivo usando o método de gravação.
O arquivo contém os seguintes dados.
This is a sample line for testing. LastWord. This is a sample line for testing. KillingIt. This is a sample line for testing. RandomWord. This is a sample line for testing. DeleteIt. This is a sample line for testing. RemovingIt.
Veja o código abaixo.
updated_data="" # opening the file with open('random_text.txt', 'r+') as file: # read the file content file_content = file.readlines() # iterate over the content for line in file_content: # removing last word updated_line=" ".join(line.split(' ')[:-1]) # appending data to the variable updated_data += f'{updated_line}n' # removing the old data file.seek(0) file.truncate() # writing the new data file.write(updated_data)
Se você executar o código acima com o arquivo fornecido, o arquivo terá os seguintes dados atualizados.
This is a sample line for testing. This is a sample line for testing. This is a sample line for testing. This is a sample line for testing. This is a sample line for testing.
Espero que tenham gostado do tutorial.
Boa codificação 🙂
Verifique também as operações de substring em Python.
Gostou de ler o artigo? Que tal compartilhar com o mundo?