Lezioni di Python – 4.6 Apertura di file

Lezioni di Python - 4.6 Apertura di file

Lavorare con i file

Spesso durante l’esecuzione di un programma è necessario utilizzare dei file sia per leggere che per scrivere dati. Questi dati potrebbero essere dei valori da leggere e poi elaborare. Infine i risultati delle nostre elaborazioni spesso invece di visualizzarli su terminale, è molto più utile salvarli all’interno di un file.

Quindi la gestione dei file, sia in lettura che in scrittura è un’attività molto importante nella programmazione in Python. Vediamo come effettuare le operazioni più comuni.

Aprire un file

I file di testo sono i più semplici da utilizzare. Però prima di poter leggere o scrivere i dati all’interno di un file, questo deve essere aperto. Questo in Python è possibile utilizzando la funzione open().

myfile = open("filename.txt")

Nella riga sopra abbiamo scritto solo in nome del file, ma in realtà questo è valido solo se il file si trova nella directory corrente di Python. Infatti l’argomento di open() non è il nome del file, bensì il path riferito sempre alla working directory.

myfile = open("path/filename.txt")

In realtà, spesso si specifica un secondo argomento nella funzione open() che specifica la modalità di uso del file. Questa si definisce aggiungendo uno o più caratteri in sequenza.

  • w – in scrittura (wrtiting)
  • r – in lettura (reading)
  • a – in append (aggiunge in fondo al programma)
  • b – file binario

Per esempio se vogliamo aprire un file in sola lettura e testuale

myfile = open("path/filename.txt","r")

Nota: r è la modalità di default, quindi può anche essere omessa

myfile = open("path/filename.txt")

oppure se voglio aprire un file binario in scrittura, dobbiamo specificare

myfile = open("path/filename.txt","wb")

Chiudere un file

Altra operazione, spesso dimenticata, è quella di chiudere un file una volta conclusa l’operazione che volevamo effettuare su di esso. Per chiudere un file si utilizza il metodo close() (metodo perchè appartiene all’oggetto file)

myfile.close()

⇐ Vai a Lezione 4.5 – Asserts

Vai a Lezione 4.7 – Lettura di file 

Lascia un commento