[Python-es] Problema con una variable.
Victor Ramirez
virako.9 en gmail.com
Mie Sep 5 16:51:33 CEST 2012
El 5 de septiembre de 2012 16:35, kausdiv <kausdiv en gmail.com> escribió:
> Hola.
> Os parecerá absurdo pero tengo un pequeño problema de principiante y no
> veo la solución:
>
> -----------------Clase--------**---
> class Telefono():
> global __cursor
> global __db
> global __conectado
>
> def __init__(self):
> __conectado = False
>
> def prueba(self):
> if __conectado != True:
> print "ok conectado"
> else:
> print "NO conectado"
>
> ------------------
>
> En main():
>
> tlf = Telefono()
> tlf.prueba()
>
> y sale el siguiente error:
> if __conectado != True:
> NameError: global name '_Telefono__conectado' is not defined. ( en la
> linea del procedimiento prueba)
>
> He puesto un print en el __init__ y se ejecuta y por tanto se asigna a
> False.
>
> ¿ que puede ser ?
>
> Saludos
>
> ______________________________**_________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/**mailman/listinfo/python-es<http://mail.python.org/mailman/listinfo/python-es>
> FAQ: http://python-es-faq.wikidot.**com/<http://python-es-faq.wikidot.com/>
>
Dentro de def prueba tienes también que poner global __conectado. Aunque si
vas a usar una variable global dentro de una clase, quizás sería mejor usar
self.__conectado en todos sitios dentro de la misma clase, y funcioná.
Espero que sirva de ayuda.
--
http://twitter.com/#!/virako <https://twitter.com/#!/virako>
http://rocamgo.wordpress.com/
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120905/8e91c603/attachment.html>
Más información sobre la lista de distribución Python-es