Possiamo aprire più file contemporaneamente ed operare su di essi insieme:
with open('doc1.txt') as d1, open('doc2.txt', 'w') as d2:
text = d1.read() # Leggi tutto da doc1.txt
d2.write(text) # Scrivi il contenuto su doc2.txt
print('Done copying the content')
Qui abbiamo aperto doc1.txt in modalità r (lettura) e doc2.txt in modalità w (scrittura). Diverse operazioni open sono separate da una virgola. Nel corpo del blocco with, tutti i file aperti sono accessibili e possiamo eseguire diverse operazioni su di essi.
Sfida
Quando sviluppi un sistema di rilevamento delle somiglianze, decidi di confrontare due file. Vorresti conoscere la percentuale di parole che sono presenti in entrambi i file.
Il primo file è source.txt e il secondo è student.txt. Calcola il numero di parole uniche in entrambi i file e stampa la percentuale delle parole uniche in source.txt che sono anche presenti in student.txt.
source.txt
student.txt
Output
Line 1
Line two
Line is important
33.333333
Line 1
Line two
Line 3
Line 1 is important
Yes
50
Spiegazione del primo esempio: Ci sono 3 parole uniche in source.txt (Line, 1, two). La parola Line è presente anche in student.txt, quindi il 33.33333% delle parole di source.txt sono presenti anche nel secondo file.