Quebras de linha podem atrapalhar a formatação de dados, especialmente ao exportar informações para CSV ou ao processar textos em lote. Felizmente, com um script simples, é possível automatizar a substituição dessas quebras por um delimitador de sua escolha, economizando tempo e evitando erros manuais.
O script abaixo lê um arquivo de texto, substitui todas as quebras de linha por um delimitador especificado e salva o resultado em um novo arquivo. É uma solução rápida e eficaz para processar grandes volumes de texto.
import sys
def substituir_quebra_linha_por_delimitador(arquivo_entrada, delimitador, arquivo_saida):
try:
with open(arquivo_entrada, 'r', encoding='utf-8') as file:
texto = file.read()
texto_substituido = texto.replace('\n', delimitador)
with open(arquivo_saida, 'w', encoding='utf-8') as file:
file.write(texto_substituido)
print(f"Arquivo processado com sucesso! Saída salva em: {arquivo_saida}")
except Exception as e:
print(f"Erro ao processar arquivo: {e}")
if __name__ == "__main__":
if len(sys.argv) != 4:
print("Uso: python script.py ")
else:
arquivo_entrada = sys.argv[1]
delimitador = sys.argv[2]
arquivo_saida = sys.argv[3]
substituir_quebra_linha_por_delimitador(arquivo_entrada, delimitador, arquivo_saida)
Para usar o script, abra o terminal, navegue até o diretório onde o arquivo está salvo e execute o comando abaixo, substituindo os parâmetros pelos valores desejados.
python script.py arquivo.txt ";" saida.csv
Neste exemplo, o script lê o arquivo arquivo.txt, substitui as quebras de linha por ponto e vírgula (;) e salva o resultado em saida.csv.
Veja como o script transforma um texto com quebras de linha em um formato delimitado:
| Entrada (arquivo.txt) | Saída (saida.csv) |
|---|---|
| Linha 1 | Linha 1;Linha 2;Linha 3 |
| Linha 2 | |
| Linha 3 |
Com este script, você automatiza a tarefa de substituir quebras de linha por um delimitador em segundos, evitando erros manuais e garantindo consistência nos seus dados. É uma solução simples, mas poderosa, para quem trabalha frequentemente com processamento de texto.