3 Modi per scrivere testo su un file in Python

Se sei interessato a scrivere testo su un file in Python, probabilmente ci sono molti modi per farlo. Ecco tre modi per scrivere testo in un file di output in Python. Il primo passo per scrivere su un file è creare l’oggetto file utilizzando il comando Python incorporato “apri”. Per creare e scrivere in un nuovo file, utilizzare l’opzione apri con “w”. L’opzione ” w ” eliminerà qualsiasi file esistente precedente e creerà un nuovo file da scrivere.

# open a (new) file to writeoutF = open("myOutFile.txt", "w")

Se si desidera aggiungere a un file esistente, utilizzare l’istruzione open con l’opzione “a”. In modalità aggiungi, Python creerà il file se non esiste.

# open a file to appendoutF = open("myOutFile.txt", "a")

Una volta creato l’oggetto file in modalità scrittura/aggiunta, è possibile scrivere testo in diversi modi. Diciamo che abbiamo il testo che vogliamo scrivere è in una lista “textList”.

textList = 

Possiamo scrivere questa lista in un file riga per riga o scrivere tutte le righe contemporaneamente.

Scrivere una riga alla volta su un file in Python usando write()

Creiamo un nuovo file creando l’oggetto file “outF” usando l’opzione ” w ” come prima. Per scrivere riga per riga, scorrere l’elenco di testo e ottenere ogni elemento e scriverlo nel file.

outF = open("myOutFile.txt", "w")for line in textList: # write line to output file outF.write(line) outF.write("\n")outF.close()

Si noti che gli elementi in “textList” non hanno un nuovo carattere di riga “\n”. Pertanto, abbiamo aggiunto che durante la scrittura al file. In caso contrario, tutti e cinque gli elementi saranno in una singola riga nel file di output. Nota anche outF.chiudi () alla fine. close () metodo chiude l’accesso al file. È una buona pratica usare il metodo close () per chiudere un file, una volta che abbiamo finito con un file.

Scrivere una riga alla volta su un file in Python Usando “print”

Un altro modo per scrivere una riga alla volta su un file in Python è usare l’istruzione print. Invece di stampare un’istruzione sul ghiaione, reindirizziamo all’oggetto file di output.

outF = open("myOutFile.txt", "w")for line in textList: print >>outF, lineoutF.close()

writelines(): Scrivere tutte le righe alla volta in un file in Python

comando writelines per scrivere tutte le righe in un file
python writelines per scrivere tutte le righe

Python ha anche un metodo che può scrivere tutte le righe contemporaneamente in un file. Il metodo “writelines()” di Python prende un elenco di righe come input e scrive su un oggetto file aperto con accesso write/append. Ad esempio per scrivere la nostra lista di tutte le righe “all_lines”, usando ” writelines ().

outF = open("myOutFile.txt", "w")outF.writelines(all_lines)outF.close()

Possiamo anche rendere la nostra vita più facile senza scrivere file.istruzione close () utilizzando l’istruzione with per scrivere in un file. Ad esempio,

with open(out_filename, 'w') as out_file: .. .. .. parsed_line out_file.write(parsed_line)

Se sei interessato a leggere da un file di testo, controlla Tre modi per leggere un file di testo riga per riga in python.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.