PYTHON: creare, leggere, scrivere files in python

In questo articolo vediamo come gestire la creazione e le altre funzioni di apertura, lettura e scrittura di file di testo nel linguaggio python. Non serve importare librerie in quanto la gestione dei file e’ nativa in python .

Creare o aprire un file.

file=open("nomefile.ext", "w")

Con questo comando cerco di aprire il file nomefile.ext se non esiste lo crea vuoto. Il parametro “w” definisce il modo di apertura del file nel seguente elenco vediamo le diverse opzioni

"a" – apre il file e aggiunge il contenuto alla fine lo crea se non esiste

"w" – apre il file in scrittura sovrascrivendo evenutuali modifiche, se non esiste lo crea

"x" – Crea il file se non esiste, restituisce errore se esiste già

in aggiunta e’ possibile specificare il tipo di file e come esso verra’ gestito:

"t" – File di testo

"b" -file binario , dati , (ad esempio i file immagini)

le opzioni si aggiungono consecutivamente ad esempio :

file = open("fileimmagine.jpg", "rb")

Questo comando aprira il fileimmagine.jpg in sola lettura e lo gestira’ come file binario

Lettura file

Per la lettura di un file di testo si possono usare diverse funzioni . read(), readline() e readlines(). Queste funzioni ovviamente restituiscono dati diversi.

file = open("filedaleggere.txt", "r")
dati = file.read()
print(dati)

read()

Questo codice apre il file in sola lettura e legge tutto il contenuto, compresa la formattazione, mettendolo nella variabile dati che poi sara’ stampato a schermo

readline()

file = open("filedaleggere.txt", "r")
dati = file.readline()
print(dati)

questo modo leggera’ la prima riga e l’assegna alla variabile dati che poi sara’ stampata, per leggere le successive righe del file si dovra’ invocare nuovamente la funzione file.readline().

readlines()

Con questa funzione il contenuto del file letto verra ritornata sottoforma di lista, e i suoi elementi saranno le righe

file = open("filedaleggere.txt", "r")
dati = file.readline()
print(dati)

il codice sopra restituira’ [‘riga1\n’,’riga2\n’, … ‘rigan\n’]

Scrittura

Per la scrittura su file esiste solo una funzione, write(), la scrittura dei dati, sara’ eseguita in base alla modalita’ con la quale e’ stato aperto il file “a” aggiungera’ i dati alla fine del file, “w” cancellera’ il contenuto.

riga = "Riga da scrivere nel file"

file = open("filedascrivere.txt", "w")
dati = file.write(riga)
file.close()

Questo codice apre il file filedascrivere.txt , cancellandolo, se non presente lo crea, poi ci scrive i dati contenuti nella variabile ‘riga’.