File
Un file è un insieme di dati nella memoria esterna che ha un nome.
Esistono due tipi di file in Python:
-
testo, che contiene testo spezzato su una riga; Dei caratteri speciali nei file di testo, possono esserci solo caratteri di nuova riga ("
\n
") e ritorno all'inizio della riga ("
\r
" ;);
-
binario, che memorizza qualsiasi dato binario senza restrizioni (ad esempio immagini, suoni, video, ecc.).
Successivamente, prenderemo in considerazione l'utilizzo di file di testo.
Il principio di lavorare con un file dal programma
Si compone di tre fasi:
1. apertura di un file;
2. lavorare con il file;
3. chiusura del file.
Questo principio di funzionamento è chiamato
"principio sandwich"..
Quando si apre un file, viene indicata la modalità operativa: lettura, scrittura o aggiunta di dati alla fine del file. Il file aperto è bloccato e gli altri programmi non possono accedervi. Dopo aver lavorato con il file, devi chiuderlo per interrompere la connessione con il programma. Quando un file viene chiuso, tutte le modifiche apportate dal programma in questo file vengono scritte su disco. Python lavora con i file tramite variabili di file.
La funzione
open()
consente
di aprire un file e restituisce una variabile di file che può essere utilizzata per accedere al file.
f = open(nome_file, access_mode)
,
dove:
-
file_name
- nome del file da aprire
-
access_mode
- modalità di apertura del file. Può essere: lettura, scrittura, ecc. La modalità predefinita è lettura (r) se non diversamente specificato.
Elenco completo delle modalità di apertura dei file
Modalità |
Descrizione |
r |
Sola lettura. |
w |
Solo scrivibile. Creerà un nuovo file se non trovato con il nome specificato. |
rb |
Sola lettura (binario). |
wb |
Solo scrittura (binario). Creerà un nuovo file se non trovato con il nome specificato. |
r+ |
Per leggere e scrivere. |
rb+ |
Per leggere e scrivere (binario). |
w+ |
Per leggere e scrivere. Creerà un nuovo file scrivibile se non trovato con il nome specificato. |
wb+ |
Per leggere e scrivere (binario). Creerà un nuovo file scrivibile se non trovato con il nome specificato. |
a |
Si apre per aggiungere nuovi contenuti. Creerà un nuovo file scrivibile se non trovato con il nome specificato. |
a+ |
Si apre per aggiungere nuovi contenuti. Creerà un nuovo file per leggere la voce se non trovata con il nome specificato. |
ab |
Si apre per aggiungere nuovi contenuti (binari). Creerà un nuovo file scrivibile se non trovato con il nome specificato. |
ab+ |
Si apre per aggiungere nuovi contenuti (binari). Creerà un nuovo file per leggere la voce se non trovata con il nome specificato. |
Il metodo
close()
ti consente di
chiudere un file.
Esempio
Fin = open("input.txt")
Fout = apri("output.txt")
# fare qualcosa con i file
fout.chiudi()
Fin.chiudi()
Se un file esistente viene aperto per la scrittura, il suo contenuto viene distrutto. Dopo la fine del programma, tutti i file aperti vengono chiusi automaticamente.