Ciao. Innanzitutto grazie mille.
E' un corso in cui Python è stato trattato in modo molto basico e molto semplificato, abbiamo fatto cicli e istruzioni condizionali, liste, tuple, i dizionari, uso e gestione dei file, lambda. Anche seguendo il corso però le esercitazioni sono state poche e poco chiare purtroppo, quindi mi ritrovo un mare di dubbi, che cerco di risolvere come posso. Ho anche consultato testi e slide trovate in rete, la teoria è ok, ma l'esame è pratico e la pratica mi sta causando un pò di problemi
.
Il defaultdict proprio non so cosa sia, non ce l'hanno menzionato, siamo rimasti solo ai dizionari.
Per quanto riguarda la gestione degli errori, potrei fare così?
- Codice:
import sys
def esercizio ():
venduti = {}
try:
with open("venduti.txt", 'r') as file: #ho messo 'r' per indicare che voglio aprire il file in lettura,serve o è di default?
for line in file.readlines():
codice, numero = line.split()
venduti[codice] = int(numero)
except IOError:
print ("Il file %s non è stato trovato " % venduti.txt)
sys.exit(-1) #condizione d'uscita che indica un errore
Per leggere l'altro file ho un dubbio, e mi scuso per la mia ignoranza
.
In venduti.txt ho solo codice e numero degli oggetti venduti, in catalogo.txt invece ho 4 cose: codice,quantità,tipo e prezzo. In venduti.txt avevo un un oggetto con codice e una quantità associata, quindi dizionario con chiave e valore(io perlomeno ho capito questo). Come "gestisco" in catalogo.txt tutte queste cose? Ho sempre le prime due informazioni che avevo in venduti.txt, ma se ne aggiungono altre due.
E' sbagliato scrivere cosi?
- Codice:
catalogo={}
try:
with open("catalogo.txt", 'r') as file:
for line in file.readlines():
codice, quantità,tipo,prezzo = line.split() #ho scritto una stupidaggine?
except IOError:
print ("Il file %s non è stato trovato " % catalogo.txt)
sys.exit(-1)
Se ho scritto qualche assurdità perdonatemi
.