Forum
>>
Programmazione Python
>>
GUI
>>
Problema a salvare un file di interi
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
|
Scritto da fabio75 |
2025-10-23 20:07:26 - Problema a salvare un file di interi
|
|
Salve ho il seguente problema: non riesco a creare un file che salvi una lista
di interi. app.values = app.freqa + app.mixa + app.freqb + app.mixb
if not self._model:
name = simpledialog.askstring('Nome modello', 'inserire il nome da assegnare', parent=self)
if not name:
return
self._model = os.path.join(self._cache, name + '.json')
if os.path.exists(self._model):
msg = 'Nome modello già in uso'
messagebox.showerror('Duplicazione', msg, parent=self)
return
for k in self._scales.keys():
sets = []
for i in range(len(self._scalesk)):
sets.append(self._scalesk.get())
app.valuesk = sets
try:
with open(self._model, 'w') as f:
json.dump(app.values, f)
except OSError as e:
msg = 'Errore salvataggio dati mixer:\n\n' + repr(e)
messagebox.showerror('Errore I/O', msg, parent=self)Aiutatemi a capire cos' è andato storto per favore. |
|
|
Scritto da Daniele aka Palmux ![]() |
2025-10-24 11:01:08 - Re: Problema a salvare un file di interi
|
|
Ciao caro, dunque proviamo a vedere qualche punto insieme.
Secondo me qui ci sono 3 cose da verificare prima di tutto: -- Tipi dei dati json.dump vuole roba serializzabile: la tua app.values è davvero lista di int? (prova: print(type(app.values), app.values[:5])) -- Refusi/indici in quel blocco ci sono self._scalesk e app.valuesk: volevi dire self._scalesk e magari salvare in una struttura per chiave? Stai chiamando .get() sul widget giusto o sulla lista? -- Percorso file la cartella self._cache esiste quando apri il file? (se no: os.makedirs(self._cache, exist_ok=True))Se vuoi testare l’I/O isolato (senza Tk/interfaccia), prova solo questo micro-test: import json
open("test.json","w").write(json.dumps([1,2,3]))
Fai sapere se trovi la strada. Cya |
|
|
Scritto da fabio75 |
2025-10-24 21:15:27 - Re: Problema a salvare un file di interi
|
Il test ha funzionato quindi è un problema di chiavi ma non capisco dove.
Ti invio il sorgente completo così capisci. get() è su lista a quanto pare. --- Ultima modifica di fabio75 in data 2025-10-24 21:18:06 --- --- Ultima modifica di fabio75 in data 2025-10-24 21:18:50 --- |
Pagina: 1
Esegui il login per scrivere una risposta.

