Quote Originariamente inviata da clasku Visualizza il messaggio
perché dici che aprire il file in "r+" non è ottimale?
che problemi ti ha dato?
Supponiamo che nel mio file "Testo.txt" ho:
Zoe
Peppa
Pippo
Pluto

Se ad es. scrivo così

codice:
def cancellazione(elem):        f=open("./Testo.txt", 'r+')


    lst_str = f.readlines()
    lst_str_new = None
    
    # Usiamo lo strumento sum per contare le occorrenze di elem
    # in ogni stringa della lista lst_str 
    # Usiamo il metodo count per contare la singola occorrenza di count
    # in una singola stringa della lista (COMPREHENSION)
    conta = sum ([elList.count(elem) for elList in lst_str])
   
    if conta == 0:
        print "     Elemento %s non trovato" %elem
    else:
        print "     Sono state trovate %d occorrenze di %s" %(conta, elem)


 #   f.close()
    


    # si esegue il replace di elem con la stringa vuota ""
 #   f = open("./Testo.txt", 'w')    
    lst_str_new = [elList.replace(elem, "") for elList in lst_str]
    f.writelines(lst_str_new)    
    f.close()
Dopo aver invocato questa funzione per la parola "Peppa" ho:

ZoePeppa
Pippo
Pluto


Zoe


Pippo
Pluto
Ovvero ho una duplicazione del file e nella seconda parte non avrò la stringa "Peppa"