local variable referenced before assignment
Marcos Sánchez Provencio
rapto en arrakis.es
Jue Dic 18 14:26:14 CET 2003
De todos modos, no es nada sano hacer un import *, ya que en cualquier
momento puedes machacar variables locales sin saberlo. import * está
para código rápido y sucio interactivo, sobre todo. Si no ponemos un
import * en Python es posible saber de dónde sale cada nombre definido
sin mirar otros módulos, cosa que no ocurre en otros lenguajes y que yo
encuentro muy acorde con el principio de mínima sorpresa.
fermunyoz en softhome.net wrote:
> Hola a todos,
> soy un poco nuevo en python y tengo un problema, que se meda
> continuamente. Os lo cuento:
> Tengo una variable al principio de mi programa que la utilizo dentro
> de una execpcion, para inicializarla a un valor concreto, cuando
> postertiormente la hago referencia en la funcion principal con un
> simple print, me da el error:
> local variable referenced before assignment
> La cosa seria asi(por ejemplo):
> try:
> variable=2
> from variables import *
> except ImportError, err:
> print "No se cargo el modulo. %s" % (err)
> sys.exit(2)
> def main():
> print variable
> if __name__ == '__main__': main()
> No se si en python hay que inicializar las variables antes de
> utilizarlas con un valor predeterminado.Hasta ahora cuando me daba
> este problema inicilizaba la variable antes de llamarla a un valor, 0
> por ejemplo,pq el error no lo a dado siempre,sino que al hacer unos
> cambios en el programa que no tiene que ver con la variable en
> cuestion,luego ejecute y me lo dio.
> Si alguien tiene una solucion agradeceria que me ayudara, pq estoy
> upoco perdido.
> GRACIAS.
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es