Forum >> Principianti >> Problema lista/file txt

Pagina: 1

Salve a tutti, sono nuovo del forum e sto imparando a programmare su python perchè dovrò fare dei lavori universitari con questo programma.
Siccome sono in fase di apprendimento, stavo scrivendo per esercitarmi un programma per gestire 3 diverse liste: materie, voti e crediti. Ora tutto ok il programma, stavo cercando di fare in modo che man mano che aggiungo alle liste mediante il comando append i nuovi dati, lui mi aggiornasse 3 diversi file txt che contengono le liste. il sistema funziona ed è il seguente:





out_file = open("lista_materie.txt","w")

out_file.write(str(lista_materie))

out_file.close()





Quindi man mano che aggiungo roba il file txt si aggiorna con i nuovi elementi della lista.




Ora una volta che riapro il programma, mi piacerebbe che "richiamasse " le liste da questi file txt (non crearne di nuove, vuote).

ho usato questo comando:





in_file = open("lista_materie.txt","r")

lista_materie = in_file.readline()

in_file.close()





appena entra in gioco la serie di comandi:




lista_materie.append(str(input()))

lista_voti.append(float(input()))

lista_crediti.append(float(input()))




mi da l'errore che non è possibile usare append in una stringa.

Ho intuito che il comando di apertura del file fa si che ciò che ci sia scritto dentro diventi una variabile "stringa" e non una lista.




Il comando iniziale, output, mi scrive il file txt sotto questa forma: [elemento1,elemento2..... etc]




quindi devo "trasformare" la stringa che mi legge il sistema in una lista, sapendo che la stringa ha la forma "[elemento1,elemento2..... etc]"




qualcuno mi potrebbe illuminare?
Ciao caro e benvenuto, hai provato con eval()?
Daniele aka Palmux said @ 2017-12-25 22:20:03:
Ciao caro e benvenuto, hai provato con eval()?

Sono ancora novellino, non conoscevo eval perché non mi era capitato, ma probabilmente funzionerà dato che ho cercato in rete la funzione! Domani modifico subito e vedo se funziona!
Daniele aka Palmux said @ 2017-12-25 22:20:03:
Ciao caro e benvenuto, hai provato con eval()?

Ho avuto modo di provare, eval sembra proprio una funzione potentissima. Il programma ora è completissimo! inserisco giusto una funzione di modifica e lo chiudo. Certo sono alle prime armi e molte funzioni si potrebbero anche snellire, ma sono soddisfatto!

Ora devo farmi venire qualche altra idea di programma!


Pagina: 1



Esegui il login per scrivere una risposta.