El 5 de septiembre de 2012 16:35, kausdiv <kaus...@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@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/
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/