09-08-2017, 02:28 PM
Buenos dias. tengo la siguiente duda si depronto alguien me puede colaborar, soy nuevo en python y emprendi este camino recientemente y ps como ya saben seguro en algun punto todos nos hemos estancado y esto es lo que me ha pasado a mi. Tengo el siguiente inconveniente:
Creo una clase persona y en el "constructor", creo un atributo "privado", creo los geters y seters para acceder a ellos pero al momento de crear un objeto de tipo Persona me retorna de los valores que son "publico" como vamos a ver en el ejemplo, mas no me retorna el valor publico como tal sino una direccion en memoria. ¿Como hago para ver el valor que ha tomado sueldo?
#encaptulamiento
class Persona(object):
def __init__(self, pnombre, pedad, psueldo):
self.setNombre(pnombre)
self.setEdad(pedad)
self.__setSueldo(psueldo)
pass
def setEdad(self, pedad):
self.__pedad = pedad
pass
def getEdad(self):
return self.__pedad
pass
def setNombre(self, pnombre):
self.__pnombre = pnombre
pass
def getNombre(self):
return self.__pnombre
pass
def __setSueldo(self, psueldo):
self.__psueldo = psueldo
pass
def getSueldo(self):
return self.__setSueldo
pass
nombre = property(getNombre, setNombre)
edad = property(getEdad, setEdad)
nuevo = Persona('Manuel', 26, 8000)
print(nuevo.nombre, " gana ", nuevo.getSueldo())
el codigo corre bien y el resultado lo adjunto en la imagen, quisiera saber como acceder a ese valor privado y que me muestre el valor que contiene. si me pueden ayudar muchas gracias de antemano
Creo una clase persona y en el "constructor", creo un atributo "privado", creo los geters y seters para acceder a ellos pero al momento de crear un objeto de tipo Persona me retorna de los valores que son "publico" como vamos a ver en el ejemplo, mas no me retorna el valor publico como tal sino una direccion en memoria. ¿Como hago para ver el valor que ha tomado sueldo?
#encaptulamiento
class Persona(object):
def __init__(self, pnombre, pedad, psueldo):
self.setNombre(pnombre)
self.setEdad(pedad)
self.__setSueldo(psueldo)
pass
def setEdad(self, pedad):
self.__pedad = pedad
pass
def getEdad(self):
return self.__pedad
pass
def setNombre(self, pnombre):
self.__pnombre = pnombre
pass
def getNombre(self):
return self.__pnombre
pass
def __setSueldo(self, psueldo):
self.__psueldo = psueldo
pass
def getSueldo(self):
return self.__setSueldo
pass
nombre = property(getNombre, setNombre)
edad = property(getEdad, setEdad)
nuevo = Persona('Manuel', 26, 8000)
print(nuevo.nombre, " gana ", nuevo.getSueldo())
el codigo corre bien y el resultado lo adjunto en la imagen, quisiera saber como acceder a ese valor privado y que me muestre el valor que contiene. si me pueden ayudar muchas gracias de antemano