🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi File Python

Codegrind Team•Jul 22 2023

Ecco degli esercizi semplici con soluzione per praticare l’utilizzo dei file in Python.

Esercizio 1

Scrivi un programma che legga il contenuto di un file di testo e lo stampi a schermo.
# apriamo il file in lettura
with open('nome_file.txt', 'r') as file:
  # leggiamo il contenuto del file e lo assegnamo alla variabile `contenuto`
  contenuto = file.read()

# stampiamo il contenuto del file a schermo
print(contenuto)

Esercizio 2

Scrivi un programma che chieda all’utente di inserire una stringa, quindi scriva la stringa in un file di testo..
# chiediamo all'utente di inserire una stringa
stringa = input("Inserisci una stringa: ")

# apriamo il file in scrittura
with open('nome_file.txt', 'w') as file:
  # scriviamo la stringa nel file
  file.write(stringa)

Esercizio 3

Scrivi un programma che legga il contenuto di un file di testo e lo copi in un altro file.
# apriamo il file di origine in lettura
with open('nome_file_origine.txt', 'r') as file_origine:
  # leggiamo il contenuto del file e lo assegnamo alla variabile `contenuto`
  contenuto = file_origine.read()

# apriamo il file di destinazione in scrittura
with open('nome_file_destinazione.txt', 'w') as file_destinazione:
  # scriviamo il contenuto del file di origine nel file di destinazione
  file_destinazione.write(contenuto)

Esercizio 4

Scrivi un programma che conti le righe di un file di testo.
# Apri il file in modalitĂ  lettura
with open('nome_file.txt', 'r') as file:
    # Conta le righe utilizzando una list comprehension per leggere il file
    numero_righe = sum(1 for line in file)

# Stampa il numero totale di righe nel file
print(f"Il file contiene {numero_righe} righe.")

Esercizio 5

Scrivi un programma che legga il contenuto di un file CSV (valori separati da virgola) e lo stampi a schermo in forma di tabella.
import csv

# apriamo il file in lettura
with open('nome_file.csv', 'r') as file:
  # utilizziamo il modulo csv per leggere il contenuto del file come una lista di tuple
  lettore_csv = csv.reader(file)

  # per ogni riga del file...
  for riga in lettore_csv:
    # stampiamo la riga come tabella
    print("|".join(riga))

Esercizio 6

Scrivi un programma che chieda all’utente di inserire i valori di una tabella in formato CSV (valori separati da virgola), quindi scriva i valori in un file CSV.
import csv

# chiediamo all'utente di inserire i valori della tabella
valori = []
while True:
  valore = input("Inserisci un valore (digita 'fine' per terminare): ")
  if valore == 'fine':
    break
  valori.append(valore)

# apriamo il file in scrittura
with open('nome_file.csv', 'w') as file:
  # utilizziamo il modulo csv per scrivere la lista di valori nel file come una riga di una tabella CSV
  scrittore_csv = csv.writer(file)
  scrittore_csv.writerow(valori)

Esercizio 7

Scrivi un programma che legga il contenuto di un file di testo e lo copi in un altro file, invertendo l’ordine delle righe.
# apriamo il file di origine in lettura
with open('nome_file_origine.txt', 'r') as file_origine:
  # leggiamo il contenuto del file riga per riga e lo assegnamo alla lista `righe`
  righe = []
  for riga in file_origine:
    righe.append(riga)

# apriamo il file di destinazione in scrittura
with open('nome_file_destinazione.txt', 'w') as file_destinazione:
  # scriviamo le righe del file di origine nel file di destinazione invertendo l'ordine
  for riga in reversed(righe):
    file_destinazione.write(riga)