Pitone

Come leggere e scrivere file di testo in Python

Come leggere e scrivere file di testo in Python
Questo articolo tratterà una guida che spiega la gestione dei file esterni in Python. L'obiettivo principale sarà l'apertura e la chiusura di testo e altri file di dati non binari archiviati su un supporto di memorizzazione, consentendo di eseguire varie operazioni sul contenuto dei file aperti.

Apertura e chiusura di un file

Per leggere i dati da un file di testo denominato “data.txt", è necessario utilizzare il metodo "open" fornito con le build ufficiali di Python. Controlla il codice di esempio qui sotto:

f = open('data.txt', 'r')
f.vicino()

La prima istruzione apre il "data.txt" in modalità "r" (sola lettura). Il metodo "open" accetta un nome di file e la modalità per gestire il file come argomenti. Oltre alla modalità "r", ci sono anche altre modalità che verranno spiegate in seguito. Il frammento di codice sopra non esegue alcuna operazione sul file aperto. Il metodo “close” viene utilizzato per chiudere in modo pulito il file aperto in modo da liberare memoria ed evitare il danneggiamento dei dati nel file aperto che può verificarsi a volte se il file non viene chiuso correttamente.

Invece di utilizzare il metodo "open" per gestire l'apertura e la chiusura dei file, è possibile combinarlo con la parola chiave "with" e utilizzare l'istruzione "with open".

con open('data.txt', 'r') come f:
passaggio

Il vantaggio principale dell'utilizzo di un'istruzione "with open" è che l'interprete chiude automaticamente il file aperto in modo sicuro quando il blocco di codice "with open" viene analizzato completamente. Sebbene il garbage collector in Python chiuda automaticamente i file aperti dopo un po' secondo le regole preimpostate, le istruzioni "with open" assicurano che il file venga chiuso in modo pulito non appena il blocco di codice è terminato per liberare risorse.

Lettura di righe di un file di testo

Per leggere il contenuto di un file, utilizzare l'esempio di codice riportato di seguito:

con open('data.txt', 'r') come f:
dati = f.leggere()
stampa (dati)

Ad esempio, se "data.txt" ha 1-10 numeri, ciascuno su una nuova riga, otterrai il seguente output dopo aver eseguito il codice sopra:

1
2
3
4
5
6
7
8
9
10

L'intero dump dei dati del "data.txt” è memorizzato nella variabile “data”. Se vuoi leggere le righe in un elenco, puoi utilizzare i seguenti esempi di codice:

con open('data.txt', 'r') come f:
dati = f.righe di lettura()
print (dati) con open('data.txt', 'r') come f:
dati = lista(f)
stampa (dati)

Tieni presente che l'utilizzo degli snippet precedenti potrebbe ottenere il carattere "\n" (nuova riga) alla fine di ogni elemento nell'elenco. Per rimuovere questi caratteri di nuova riga, potresti dover scorrere l'elenco. Puoi sia creare un nuovo elenco che eliminare i caratteri di nuova riga utilizzando invece il codice seguente:

lista_dati = []
con open('data.txt', 'r') come f:
per la riga in f:
data_list.append(riga.striscia())
stampa (data_list)

L'esecuzione del codice sopra otterrà il seguente output:

['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']

Scrittura di dati su un file aperto

Per scrivere dati su un file che si sta aprendo utilizzando l'istruzione "with open", dovrai fornire una modalità di apertura diversa come argomento. Ecco alcune delle modalità:

Di seguito sono elencati alcuni frammenti di codice che utilizzano modalità diverse per scrivere i dati.

Per scrivere nuovo contenuto in un file di testo mentre si cancellano i dati esistenti, utilizzare il seguente esempio:

con open('data.txt', 'w') come f:
f.scrivi("1\n2")

Dopo aver eseguito lo snippet sopra, 1-10 numeri in "data.txt" dovrebbe essere sostituito da due nuove righe.

Per aggiungere righe all'inizio di un file di testo, è necessario utilizzare il metodo "ricerca" per tornare alla posizione iniziale del buffer del file:

con open('data.txt', 'r+') come f:
dati = f.leggere()
f.cercare(0)
f.scrivi("-1\n0\n")
f.scrivere (dati)

Dopo aver eseguito lo snippet sopra, i numeri -1 e 0 verranno aggiunti alle prime due righe in "dati.txt" file.

Per aggiungere dati alla fine del file, utilizzare il seguente esempio:

con open('data.txt', 'a') come f:
f.scrivi("11\n12")

Dopo aver eseguito lo snippet sopra, verranno aggiunti 11 e 12 numeri alla fine del file.

Conclusione

Classi e metodi incorporati in Python forniscono un modo affidabile per gestire i file di testo. Con solo poche righe di codice puoi manipolare i dati esistenti in un file e inserire nuove righe.

Controlla e gestisci il movimento del mouse tra più monitor in Windows 10
Gestore mouse con doppio display ti consente di controllare e configurare il movimento del mouse tra più monitor, rallentando i suoi movimenti vicino ...
WinMouse ti consente di personalizzare e migliorare il movimento del puntatore del mouse su PC Windows
Se vuoi migliorare le funzioni predefinite del puntatore del mouse, usa freeware WinMouse. Aggiunge più funzionalità per aiutarti a ottenere il massim...
Il tasto sinistro del mouse non funziona su Windows 10
Se stai utilizzando un mouse dedicato con il tuo laptop o computer desktop ma il il tasto sinistro del mouse non funziona su Windows 10/8/7 per qualch...