Profilo di
fabio75
| Nome | fabio75 |
|---|---|
| Indirizzo email | n/a |
| Messaggi | 27 |
-
- 2025-10-28 13:06:06
- Re: Problema a salvare un file di interi
- Forum >> Programmazione Python >> GUI
- Risolto il problema riguardo values: ti allego prova.py.
Una volta risolto il problema nn mi da errori ma nn mi setta gli sliders una volta caricato un file "corretto".
Non capisco perchè, dai un'occhiata al sorgente.
Fai alcune prove pure te se hai il tempo.
--- Ultima modifica di fabio75 in data 2025-10-28 13:06:37 ---
--- Ultima modifica di fabio75 in data 2025-10-28 13:07:12 ---
-
- 2025-10-26 08:56:32
- Re: Problema a salvare un file di interi
- Forum >> Programmazione Python >> GUI
- Ora però mi succede una cosa strana con il codice allegato:
Se carico con open() modello1 funziona e mi setta gli sliders,
mentre se carico modello2 mi da il seguente errore:
Exception in Tkinter callback Traceback (most recent call last): File "/usr/lib/python3.10/tkinter/__init__.py", line 1921, in __call__ return self.func(*args) File "/media/fabio/6CA2E3C5A2E3923E/Progetti con eagle/SINTHETIZER/SOFTWARE/PC/prova.py", line 292, in _on_open self._scalesk.set(app.values) File "/usr/lib/python3.10/tkinter/__init__.py", line 3507, in set self.tk.call(self._w, 'set', value) _tkinter.TclError: expected floating-point number but got "1500 1500 1500 1500 1500"infine se carico modello3 mi funziona lo stesso e mi mette gli sliders tutti a 0 come previsto dal file modello3.
Carico i tre modelli più il sorgente.
Fammi sapere.
-
- 2025-10-26 08:18:22
- Re: Problema a salvare un file di interi
- Forum >> Programmazione Python >> GUI
- Mi da errore quì:
def _on_open(self):
sets = []
model = select_model(self, self._cache)
if not model: return
self._model = os.path.join(self._cache, model + '.json')
try:
with open(self._model) as f:
app.values = json.load(f)
except OSError as e:
msg = 'Errore salvataggio dati mixer:\n\n' + repr(e)
messagebox.showerror('Errore I/O', msg, parent=self)
return
for k in self._scales.keys():
for i in range(len(self._scalesk)):
print(app.values)
self._scalesk.set(app.values) #mi da errore quì
Aiutami a capire che cosa c' è che non va, errore:
1500 Exception in Tkinter callback Traceback (most recent call last): File "/usr/lib/python3.10/tkinter/__init__.py", line 1921, in __call__ return self.func(*args) File "/media/fabio/6CA2E3C5A2E3923E/Progetti con eagle/SINTHETIZER/SOFTWARE/PC/prova.py", line 294, in _on_open self._scalesk.set(app.values) AttributeError: 'list' object has no attribute 'set'
RISOLTO
self._scalesk.set(app.values)
Era un problema di indici.
--- Ultima modifica di fabio75 in data 2025-10-26 08:25:28 ---
--- Ultima modifica di fabio75 in data 2025-10-26 08:26:13 ---
-
- 2025-10-24 21:15:27
- Re: Problema a salvare un file di interi
- Forum >> Programmazione Python >> GUI
- Daniele aka Palmux said @ 2025-10-24 11:01:08:
import json open("test.json","w").write(json.dumps([1,2,3]))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.
Sono riuscito a mettere a posto il comando save:
def _on_save(self): app.values = app.freqa + app.mixa + app.freqb + app.mixb print(app.values) 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) return
Dimmi che te ne pare.
Ho tolto#app.valuesk = sets
e mi salva il modello su file.
--- Ultima modifica di fabio75 in data 2025-10-24 21:18:06 ---
--- Ultima modifica di fabio75 in data 2025-10-24 21:18:50 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:50:49 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:51:04 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:51:51 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:52:14 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:52:34 ---
--- Ultima modifica di fabio75 in data 2025-10-26 06:53:09 ---
-
- 2025-10-24 11:54:46
- Re: Problema con ser.write()
- Forum >> Programmazione Python >> GUI
- OK! Grazie, funziona!

-
- 2025-10-23 20:07:26
- Problema a salvare un file di interi
- Forum >> Programmazione Python >> GUI
-
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.
-
- 2025-10-23 19:56:59
- Re: Problema con ser.write()
- Forum >> Programmazione Python >> GUI
- Il problema è che devo inviare char superiori a 256
potri avere valori con un massimo di 1500 o 100000.
Come posso fare?
--- Ultima modifica di fabio75 in data 2025-10-23 19:57:26 ---
-
- 2025-10-23 12:44:03
- Re: Problema con ser.write()
- Forum >> Programmazione Python >> GUI
-
Ok quindi devo ciclare con for su ser.write():
ecco il codice.
values = app.freqa + app.mixa + app.freqb + app.mixb
print(app.values)
#invia modello
try:
# Apri la porta seriale
ser = serial.Serial('/dev/ttyACM0', 9600, timeout=1)
print(f"Porta seriale /dev/ttyACM0 aperta con successo.")
time.sleep(2) # Attendi un momento per la connessione
val = [ [e.encode('UTF-8') for e in values]]
print(val)
# Invia i dati
for char in range(len(val)):
ser.write(valchar)
print("Dati inviati!")
# Chiudi la porta seriale
ser.close()
print("Porta seriale chiusa.")
except serial.SerialException as e:
print(f"Errore durante l'apertura o la comunicazione della porta seriale: /dev/ttyACM0")
e mi da ancorar errore:
{0} Porta seriale /dev/ttyACM0 aperta con successo. Exception in Tkinter callback Traceback (most recent call last): File "/usr/lib/python3.10/tkinter/__init__.py", line 1921, in __call__ return self.func(*args) File "/media/fabio/6CA2E3C5A2E3923E/Progetti con eagle/SINTHETIZER/SOFTWARE/PC/prova.py", line 197, in invia val = [ [e.encode('UTF-8') for e in values]] File "/media/fabio/6CA2E3C5A2E3923E/Progetti con eagle/SINTHETIZER/SOFTWARE/PC/prova.py", line 197, in <listcomp> val = [ [e.encode('UTF-8') for e in values]] AttributeError: 'int' object has no attribute 'encode'Scusami la modalità ad indice su ser.write() ma provengo dal C.
-
- 2025-10-22 19:32:15
- Problema con ser.write()
- Forum >> Programmazione Python >> GUI
- Ho un problema con questo pezzo di codice:
try:
# Apri la porta seriale
ser = serial.Serial('/dev/ttyACM0', 9600, timeout=1)
print(f"Porta seriale /dev/ttyACM0 aperta con successo.")
time.sleep(2) # Attendi un momento per la connessione
values=['1000','1000','0','0','0','0','0']
values = [ [e.encode('UTF-8') for e in values]]
print(values)
# Invia i dati
ser.write(values)
#print("Dati inviati!")
# Chiudi la porta seriale
ser.close()
print("Porta seriale chiusa.")
except serial.SerialException as e:
print(f"Errore durante l'apertura o la comunicazione della porta seriale: /dev/ttyACM0")
se tento di inviare la stringa values mi da il seguente errore:
TypeError: 'list' object cannot be interpreted as an integer
Sto cercando di inviare lungo la USB verso un Arduinodue valori superiori a 256.
Nessuno mi puo' aiutare a capire che tipo di dati vuole ser.write() ?
--- Ultima modifica di fabio75 in data 2025-10-22 19:42:15 ---
-
- 2025-10-19 13:22:33
- Re: Problema con lista values[] in programma con GUI
- Forum >> Programmazione Python >> GUI
- Ho corretto gli indici e mi rimangono i due errori sui metodi di aggiornamento di values[].
--- Ultima modifica di fabio75 in data 2025-10-19 13:54:04 ---
