logo

Come scrivere in un file di testo usando Python?

Leggere e scrivere su un file per l'archiviazione o per un utilizzo successivo sono attività comuni nella programmazione. Python ha diversi modi per lavorare con i file, ma ci concentreremo in particolare sulla scrittura su file di testo. I file di testo vengono utilizzati per archiviare dati di testo semplice e Python semplifica la lettura e la scrittura dei dati nei file di testo da parte dei programmatori.

In questo tutorial spiegheremo come gli utenti possono scrivere in un file di testo utilizzando Python.

Python ha una funzione integrata per creare, scrivere o leggere i file. Può gestire due tipi di file: normali file di testo e file binari. La scelta tra questi due dipende dai dati su cui stai lavorando e dai requisiti dell'applicazione.

    File di testo normale:Il normale file di testo memorizza contenuti o caratteri leggibili dall'uomo come lettere, numeri, spazi bianchi e simboli. Nel normale file di testo, ogni riga di testo termina con il carattere speciale noto come 'Fine riga' (EOL). Per impostazione predefinita, è il carattere di nuova riga (' ') in Python.File binario:I file binari memorizzano i dati in formato binario. Nel file binario, nessuna riga termina e i dati vengono archiviati dopo essere stati convertiti nel linguaggio binario della macchina. Questi dati non sono destinati ad essere letti e modificati direttamente dagli esseri umani.

Sintassi per aprire un file in Python:

 # Method 1: file = open (path_to_the_file, mode) # Manually required to close the file `file.close()` to ensure that # changes made are saved, and system resources are freed up. # Method 2: with open (path_to_the_file, mode) as file: # It automatically closes the file properly # after the block code is executed. 

La funzione open() può accettare vari parametri. Ma l’utente deve concentrarsi sui primi due:

    Percorso_del_file- IL 'percorso_del_file' il parametro viene utilizzato per specificare il percorso del file di testo che l'utente desidera aprire in scrittura.Modalità- IL 'modalità' Il parametro viene utilizzato per specificare la modalità (scrittura, lettura, ecc.) per la quale l'utente desidera aprire il file di testo.

Per scrivere in un file di testo l'utente utilizzerà la seguente modalità:

Modalità Descrizione
'In' Viene utilizzato per aprire il file di testo per scrivere testo. Il file viene troncato in questa modalità significa che il contenuto esistente del file viene eliminato.
'UN' Viene utilizzato per aprire il file di testo per aggiungere testo. Il puntatore viene posizionato alla fine del file e i nuovi dati vengono aggiunti al contenuto esistente.

Esempio: mostrare come un utente può scrivere in un file di testo utilizzando Python

 file.write('
') file.writelines('
') 

Dipende totalmente dall'utente se desidera aggiungere o meno il testo nella riga seguente.

altrimenti nella shell bash

Esempio 2: mostrare come utilizzare la funzione write() per scrivere l'elenco di testi nel file di testo

 # Method 1 - Simple Approach file = open ('writeme.txt', 'w') file.write('writeme') file.close() # Method 2 - Using the 'with' keyword to open a file with open ('writeme.txt', 'w') as file: file.write('writeme') 

Produzione:

Come scrivere in un file di testo usando Python

Entrambi i metodi danno lo stesso risultato.

Passaggi per scrivere in un file di testo in Python:

Per scrivere nel file di testo utilizzando Pitone , l'utente deve seguire i seguenti passaggi:

Passaggio 1: aprire il file: Per iniziare a scrivere su un file di testo, dobbiamo prima aprirlo utilizzando la funzione integrata open(), che accetta due parametri: il nome del file (incluso il percorso se il file non è nella directory corrente) e la modalità in cui vogliamo aprire il file. Nel caso di scrittura su un file di testo, possiamo utilizzare la modalità 'w', che sta per modalità di scrittura, o la modalità 'a', che sta per modalità di aggiunta. Se il file non esiste, Python creerà un nuovo file con il nome specificato.

 # Opening a file 'example.txt' file = open('example.txt', 'w') 

La funzione open() restituirà un oggetto file e quell'oggetto file avrà due funzioni utili per scrivere del testo al suo interno:

  • scrivere()
  • righe di scrittura()

La funzione write() viene utilizzata per scrivere la stringa nel file di testo e la funzione writelines() viene utilizzata per scrivere contemporaneamente l'elenco delle stringhe nel file.

La funzione writelines() può anche accettare l'oggetto iterabile. L'utente può anche passare la tupla di stringhe, l'insieme di stringhe, ecc.

Per scrivere nella riga successiva, l'utente deve aggiungere manualmente il carattere di nuova riga.

Passaggio 2: scrivere nel file: Non appena il file viene aperto in modalità scrittura, possiamo utilizzare la funzione write() o la funzione writelines() per scriverci dentro. Il metodo write() accetta una stringa come parametro che vogliamo scrivere nel file. Possiamo scrivere più righe chiamando più volte la funzione write() o utilizzando i caratteri di nuova riga ( ) tra le stringhe per separare le righe.

 # Using the 'write' function file.write('This is the first line.
') file.write('This is the second line.
') # Using the 'writelines' function file.writelines('This is the first line.
This is the second line.
') 

Passaggio 3: chiudere il file: L'utente può chiudere il file di testo utilizzando la funzione close(). Dopo aver scritto il contenuto desiderato nel file, è importante chiuderlo correttamente. La chiusura del file garantisce che eventuali modifiche vengano salvate e che le risorse di sistema vengano liberate.

 # Closing the file file.close() 

Esempio 2: mostrare come gli utenti possono aggiungere un carattere di nuova riga in un file txt

 file.write('
') file.writelines('
') 

Dipende totalmente dagli utenti se vogliono aggiungere o meno il testo nella riga seguente.

Esempio 3: mostrare come utilizzare la funzione write() per scrivere l'elenco di testi o stringhe in un file di testo

 # Creating a list of strings lines_1 = [ 'This is an example', 'to show how a user can write in a text file using Python'] with open('text.txt', 'w') as file: # Iterating over each element of the list for line_1 in lines_1: file.write(line_1) # Adding the line to the text.txt file.write('
') # Adding a new line character 

Produzione:

Come scrivere in un file di testo usando Python

Spiegazione:

Nell'esempio precedente, abbiamo prima creato un elenco di stringhe denominate righe_1, quindi abbiamo aperto il file utilizzando la funzione open() con l'istruzione 'with'. Abbiamo quindi utilizzato un ciclo for per scorrere gli elementi dell'elenco, seguito dalla scrittura della riga e dall'aggiunta di un nuovo carattere di riga al file. Alla fine del ciclo for viene aggiunto un carattere di nuova riga e il puntatore viene posizionato sulla riga successiva.

Se il file text.txt non esiste nella cartella, la funzione open() creerà il nuovo file e le operazioni verranno eseguite di conseguenza.

Esempio 4: per mostrare come gli utenti possono scrivere l'elenco di stringhe di testo nel file text.txt utilizzando la funzione writelines():

inferno di richiamata in javascript
 # Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can write in a text file using writelines() function in Python.'] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines() function file.writelines(lines_1) 

Produzione:

Come scrivere in un file di testo usando Python

Spiegazione:

Nell'esempio precedente, la funzione writelines() scrive ogni elemento della lista in una singola riga nel file.

Se l'utente tratta ciascun elemento dell'elenco come una riga, deve collegarlo con un carattere di nuova riga.

Esempio 4: mostrare come un utente può collegare il carattere di nuova riga a ciascun elemento della riga nel file text.txt

Abbiamo già visto nell'esempio numero 3 come possiamo aggiungere un carattere di nuova riga dopo ogni elemento della lista. Mentre utilizziamo la funzione writelines(), dobbiamo aggiungere un carattere di nuova riga nella stringa.

 # Creating a list of strings lines_1 = [ 'This is an example
', 'to show how a user can link a new line character
', 'with each element of the list.
'] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines function file.writelines(lines_1) 

Produzione:

Come scrivere in un file di testo usando Python

Spiegazione:

Nell'esempio precedente, la funzione writelines() scrive l'elemento della lista nel file text.txt, dove ogni elemento della lista termina con un carattere di nuova riga.

Conclusione

In questo tutorial abbiamo spiegato come un utente può scrivere testi in un file di testo utilizzando Python e le sue diverse funzioni. Abbiamo prima imparato a conoscere i file di testo normali e binari, seguiti dalla sintassi su come aprire un file. Abbiamo anche esaminato la differenza tra 'w' (modalità di scrittura) e 'a' (modalità di aggiunta). Abbiamo poi appreso i passaggi per scrivere in un file di testo in Python e implementato vari esempi per comprendere diversi metodi per scrivere in un file di testo.