[Python] Caccia al bug, UnboundLocalError
Manlio Perillo
manlio.perillo a gmail.com
Lun 15 Apr 2013 18:38:40 CEST
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Il 15/04/2013 18:26, Marco Giusti ha scritto:
> [...]
>> UnboudLocalError: Local variable 'x1' referenced before assignment.
>>
>> Dalla mia poca esperienza mi dice che è stata usata una variabile
>> prima di essere definita e quello che ho suggerito mi è sembrato
>> chiaro e terra terra...
>
> non proprio:
>
> Python 2.7.3rc2 (default, Apr 22 2012, 22:30:17)
> [GCC 4.6.3] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> a
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> NameError: name 'a' is not defined
> >>>
>
> come vedi l'errore è ben differente. Leggi il link che è stato postato
> che è molto istruttivo.
>
La gestione delle variabili locali è una delle poche cose non banali di
Python.
def foo():
x += 1
y += 1
foo()
Sia il codice nel namespace globale, che quello all'interno della
funzione fanno esattamente la stessa cosa, eppure viene lanciata una
eccezione diversa.
Ciao Manlio
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAlFsLRAACgkQscQJ24LbaUR3bgCeKjcBwuZSvkts+32g+0AROOZX
U/4An3YaLdEGPUzTPvyPBAQRHiJ2i7JV
=879r
-----END PGP SIGNATURE-----
Maggiori informazioni sulla lista
Python