Ciao a tutti! Ho un problema sulla comprensione di questo codice.
Richiesta: "Scrivere una funzione modificaCase(fin, fout) che copia il file di ingresso fin nel file di uscita fout, contando tutte le occorrenze di casa che diventano casa1, casa2, casa 3"
Quindi avendo un file di ingresso fin:
ciao
come
stai
casa
tutto
casa
Il file di uscita fout dovrà essere:
ciao
come
stai
casa1
tutto
casa2
Il codice è il seguente, e funziona perfettamente:
codice:
import re
def modificaCase(file_in,file_out):
p=open(file_in, "r", encoding="utf-8").read()
fout=open(file_out,"w",encoding="utf-8")
i=1
while re.search('\Wcasa\W',p):
print(i)
s=re.search('\Wcasa\W',p)
p=p[:s.start()+5]+str(i)+p[s.start()+5:len(p)]
i=i+1
print(p,file=fout)
fout.close()
Quello che non riesco a capire è la riga di codice:
codice:
p=p[:s.start()+5]+str(i)+p[s.start()+5:len(p)]
Chi è così gentile da spiegarmela passo passo?
Grazie