[Python] Caccia al bug, UnboundLocalError
Adriano Barbieri
adrianobarb a yahoo.it
Lun 15 Apr 2013 14:12:37 CEST
Ciao Gabriel.
La x assegnata nella definizione ha vita solo al suo interno, se vuoi
globalizzare il suo valore, prima ti conviene chiamarla self.x ed usarla
come tale.
L'errore può anche essere che x non sia del tipo corretto, ad esempio
x="stringa" e poi la tenti di azzerare come un integer. cioè x=0 quando
invece si dovrebbe scrivere x=''
Adriano
----- Original Message -----
From: "Gabriel Battaglia (Kriyaban)" <iz4apu a libero.it>
To: "Discussioni generali sul linguaggio Python" <python a lists.python.it>
Sent: Monday, April 15, 2013 10:18 AM
Subject: [Python] Caccia al bug, UnboundLocalError
Buongiorno, preparate i vostri gentili stomaci ad un'altra di quelle domande
da super niubbo...
Sono alla caccia di un bug, per ora non posto il codice perchè la mia
intenzione è più quella di raccogliere una informazione di
carattere generale, più avanti nel topic, se sarà necessario, posterò il
link di pastebin.
Dunque, in breve la situazione è questa: uno script di circa 300 righe, con
varie funzioni.
Le funzioni ricevono e restituiscono variabili e "vedono" variabili
dichiarate, usate, a livelli ad esse superiori, come è normale
che sia.
Questo funziona tranne che per una variabile, a mio avviso usata come tutte
le altre, che però produce questo errore:
UnboudLocalError: Local variable 'x1' referenced before assignment.
Quali sono le cause più probabili.. o l'unica causa possibile, che genera
questo errore?
Se scrivo: x1=0, fuori dalla funzione, l'errore avviene comunque. Se lo
scrivo dentro la funzione, l'errore scompare ma perdo anche
l'utilizzo di x1 perchè viene inizializzata a 0 ogni volta che chiamo la
funzione, mentre io ho bisogno che x1 registri il valore
minimo toccato da un'altra variabile.
Grazie per l'aiuto.
GB.
_______________________________________________
Python mailing list
Python a lists.python.it
http://lists.python.it/mailman/listinfo/python
Maggiori informazioni sulla lista
Python