Press ESC to close

Aggiungere contenuto a un file in Python

0 514

In questa lezione studieremo come aggiungere contenuto a un file in Python già esistente, utilizzando la modalità append.

Aggiungere contenuto a un file in Python – primo esempio

In questo primo esempio utilizzeremo il nostro file rubrica.txt che già contiene dei dati ed aggiungere dei nuovi contatti.

Ipotizziamo ad esempio che il file contenga questi contatti:

Nome: cristina – Telefono: 3567
Nome: luisa – Telefono: 34789

Implementiamo un algoritmo che consente di aggiungere un nuovo dato utilizzando il metodo write:


f = open('rubrica.txt', 'a')
name = input('Inserisci un nuovo nome: ')
telephone = input('Inserisci il telefono: ')
f.write('Nome:' + name + ' - Telefono:' + telephone)    
f.close()

Possiamo anche utilizzare la funzione print per scrivere nel file, dove specifichiamo il file su cui scrivere che abbiamo aperto in precedenza con open:


f = open('rubrica.txt', 'a')
name = input('Inserisci un nuovo nome: ')
telephone = input('Inserisci il telefono: ')
print('Nome:' + name + ' - Telefono:' + telephone, file = f)    
f.close()

Aggiungere contenuto a un file in Python – secondo esempio

In questo secondo esempio gestire più inserimenti grazie alle istruzioni cicliche.

Supponiamo ad esempio di voler chiedere all’utente quanti nomi si vuole aggiungere al file e di conseguenza gestire gli input in base alla risposta data.

Questa una possibile implementazione del semplice algoritmo nel quale utilizziamo il ciclo for:


f = open('rubrica.txt', 'a')

n_dati = int(input('Quanti dati vuoi inserire?: '))

for i in range(n_dati):
    name = input('Inserisci un nuovo nome: ')
    telephone = input('Inserisci il telefono: ')
    f.write('\nNome:' + name + ' - Telefono:' + telephone)

f.close()

Aggiungere contenuto a un file in Python – terzo esempio

Se vogliamo aggiungere più elementi possiamo utilizzare anche un’istruzione iterativa e terminare ad esempio quando si clicca su un carattere a scelta.

Ipotizziamo di voler inserire dei dati e fermarci quando si sceglie di digitare il carattere *.

Ecco dunque una possibile implementazione nel quale utilizziamo il ciclo while:


f = open('rubrica.txt', 'a')

print('Inserisci nuovi contatti nella rubrica, per terminare inserisci * nel nome')

name = input('Inserisci un nuovo nome: ')

while name !='*':
    telephone = input('Inserisci il telefono: ')
    f.write('\nNome:' + name + ' - Telefono:' + telephone)
    name = input('Inserisci un nuovo nome: ')
f.close()

Colgo l’occasione per ricordare che il ciclo for si utilizza quando sappiamo esattamente quante volte sarà eseguito il ciclo, come nel secondo esempio dove verrà esseguito n_dati. Mentre il ciclo while si utilizza quando si vuole fermare il ciclo a seguito di una condizione.

In questa lezione abbiamo visto alcuni semplici esempi su come aggiungere contenuto ad un file in Python.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

Other stories

Aggiungere un numero random in un file

Next Story

readline Python

Previous Story