Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2009, 13:42
yuo2
 
Fecha de Ingreso: diciembre-2008
Ubicación: PERU
Mensajes: 294
Antigüedad: 16 años
Puntos: 23
cual es mi error -POO-

Hola a todos, estube practicando algo de POO en python y bueno descubri que las variables privadas no existen y el encapsulamiento no es un 99% eficaz.
Bueno saliendo de ese tema, diseñe un ejemplito para practicar y bueno me sale un error; espero que sea error mio y no del lenguaje Python.
Cree 2 Clases y una interface estan en archivos distintos; el problema creo yo, es cuando trato de asignar el valor 18 a maxedad de la clase "PuertaDisco"; se supone que una clase debe poseer atributos y metodos; entonces en el metodo "e_asegurar" trato de comparar la edad del cliente (La cual asigno yo cuando ejecuto el programa) con el maximo de edad que se asigno para que ingrese (esto lo asigno internamente).

Código python:
Ver original
  1. ---------interface.py------------
  2.  
  3.  
  4. import claseCliente
  5. import clasePuerta
  6.  
  7. nom=raw_input("ingrese su nombre: ")
  8. eda=raw_input("ingrese su edad: ")
  9. clie = claseCliente.cliente(nom,eda)
  10. clie.e_irdisco()
  11.  
  12. ---------ClaseCliente.py--------
  13.  
  14. import ClasePuerta
  15.  
  16. class cliente:
  17.     def __init__(self,pnomb,pedad):
  18.         self.pnomb=pnomb
  19.         self.pedad=pedad
  20.     def e_irdisco(self):
  21.         op=raw_input("Desea ir a Disco? :")
  22.         if op=="si":
  23.             ClasePuerta.e_asegurar()
  24.  
  25.  
  26. ---------ClasePuerta.py-----------
  27.  
  28. import ClaseCliente
  29.  
  30. class PuertaDisco:
  31.     def __init__(self,maxedad):
  32.         self.maxedad=maxedad
  33.     def e_asegurar(self):
  34.         self.maxedad=18
  35.         if self.maxedad > int(claseCliente.pedad)
  36.             print "NO PUEDE PASAR"
  37.         else:
  38.             print "ADELANTE PASE"

Última edición por AlvaroG; 05/03/2009 a las 11:10 Razón: resaltado de sintaxis