Oi Halyson ---
tem vários detalhes no seu problema ai:
uam coisa é achar as linhas que você quer modificar - e a resposta do
Bruno Rocha ajuda nisso -
outra coisa é alterar as linhas e alterar o arquivo de volta - isso
requer um pouco mais de código.
Independente de voce estar começando a programar, ou se Python não é
sua primeira linguagem,
uma coisa é importante ter em mente:
Alterar valores especificos dentro de arquivos de texto já existente
nao é uma pratica comum,
e é algo trabalhoso - o mais comum é criar um novo arquivo, com os
dados desejados alterados -
e ai renomear ou apagar o arquivo antigo.
Entao a lógica fica:
com os arquivos de entrada e saida abertos:
ler uma linha do arquivo de entrada
se a linha contem a sequencia que requer alteracao:
criar um novo valor pra linha, com a alteracao
no arquivo de saida, escrever a linha
renomear o arquivo original
renomear o novo arquivo para o nome original
(pronto, dai é só traduzir pra Python) .
A parte de "criar uma nova linha com a alteração" tambem requer uma explicação:
em Python, ao contrário de C, as string são valores imutáveis.
QUnado voce le uma linha do arquivo, voce tem uma string - entao ao
criar uma nova linha
o usual é copiar as partes que você quer deixar as mesmas, e colocar o
valor que voce
quer modificar.
Como o separador de campos no seu arquivo é "|" um jeito pratico de
fazer isso é
usar os métodos "split" e "join" das strings: dividir (split) a
string por campos onde existem "|",
re-escrever o campo desejado, e juntar de novo com "|" para uma nova string.
Entao, essa sequencia poderia ser:
if "C100" in linha:
tmp = linha.split("|")
tmp[4] = nova_letra
linha = "|".join(tmp)
--
Nao vou por o rpograma prontinho, por que nao é a pratica na lista --
mas aproveite para ver o comando "with" para usar arquivos a partir
do Python -
js
-><-
2013/2/18 Halyson Sampaio <
halyson...@gmail.com>: