[Linuxtrent] Re: manipolazione file
- From: Lele Gaifax <lele@xxxxxxxxxxxxxxx>
- To: linuxtrent@xxxxxxxxxxxxx
- Date: Tue, 02 Apr 2019 14:08:17 +0200
mauro cavagna <cavagna.mauro@xxxxxxxxx> writes:
Ho un problema con la manipolazione di alcuni file di testo. Ho un
centinaio di file che contengono migliaia di righe come queste:
0*3*3000,+00.44,-00.76,-00.03,+01.65,+2.7899,+1.2512
Quello che voglio fare è sottrarre un numero al secondo carattere(numero)
di ogni riga del file, in modo da ottenere questo risultato:
0*2*3000,+00.44,-00.76,-00.03,+01.65,+2.7899,+1.2512
Nel caso sopra quindi sottrarre 1 a 3.
Un modo è con un minuscolo script Python:
with open('p.txt') as f:
for line in f.readlines():
newline = line[:1] + chr(ord(line[1]) - 1) + line[2:].rstrip()
print(newline)
che apre il file, legge riga per riga, calcola la nuova "versione" mantenendo
inalterate le parti precedenti e seguenti al carattere che vuoi cambiare, poi
la stampa su stdout.
ciao, lele.
--
nickname: Lele Gaifax | Quando vivrò di quello che ho pensato ieri
real: Emanuele Gaifas | comincerò ad aver paura di chi mi copia.
lele@xxxxxxxxxxxxxxx | -- Fortunato Depero, 1929.
--
Per iscriversi (o disiscriversi), basta spedire un messaggio con OGGETTO
"subscribe" (o "unsubscribe") a
mailto:linuxtrent-request@xxxxxxxxxxxxx
Other related posts: