[pyar] xDuda con como acceder a un método de un objeto dentro de una lista

Tomas Zulberti tzulberti en gmail.com
Mar Mar 8 17:15:12 ART 2016


2016-03-08 17:05 GMT-03:00 XLJ xlj <xlj707 en gmail.com>:

> #clase libro
>
> from ejemplar import Ejemplar
>
> class Libro(Ejemplar):
>    def __init__(self, titulo, anio, autor, paginas, editorial, codigoLibro):
>       Ejemplar.__init__(self, titulo, anio, autor, paginas, editorial) #super
>       self.__codigolibro = codigoLibro #atributo adicional propio de esta clase
>
>    def getCodigoLibro():
>       return self.__codigolibro
>
>    def showInfo(self):
>       print("titulo: ", self.__titulo)
>       print("anio: ", self.__anio)
>       print("autor: ", self.__autor)
>       print("paginas: ", self.__paginas)
>       print("editorial: ", self.__editorial)
>       print("codigo de libro: ", self.__codigolibro)
>
>
>
> # en este modulo tendre la estanteria de libros (listas)
> from libro import Libro
>
> # titulo, anio, autor, paginas, editorial, codigoLibro
>
>
>
> # llenado de la estanteria
> lib1 = Libro("Alicia en el pais de las maravillas", 1999, "lucson marz", 200, "MCgraw Hill", "AHSBCr31")
> lib2 = Libro("Peter Pan", 1985, "J. M. Barrie", 206, "A Millennium Fulcrum Edition", "HALSDF232")
> lib3 = Libro("Oliver tweest", 1855, "Charles Dikenson", 120, "Porrua", "ASDFAS235")
> lib4 = Libro("La Odisea", 1530, "Homero", 950, "Porrua", "ASDFASDF323")
> lib5 = Libro("La iliada ", 1532, "Homero", 1300, "Porrua", "ADSFASD9032")
> lib6 = Libro("La hojarasca", 1960, "Gabriel Garcia Marquez", 180, "Editorial Latina", "ADF3235ASD")
>
> libros = [lib1, lib2, lib3, lib4, lib5, lib6]  # 6 libros
>
>
> # test de vaciado de la lista
> def listar():
>     for object in libros:
>
>
>
>
>
> listar()
>
> MI DUDA ES LA SIGUIENTE como puedo hacer uso del método showInfor() que es
> el encargado de listar todas las propiedades del objeto tipo Libro, esto
> dentro de mi ciclo for
> ya intente con def listar():
> for object in libros
> print(object.showInfo())
> sin embargo esto me da error !!
>



Estaria bueno que pongas el mensaje de error que te aparece.
Por ejemplo, tu codigo corre en Python 3.

Sin embargo, lo que queres hacer es lo siguiente:

for object in libros:
    object.showInfo()

No es necesario hacer un print de object.showInfo(), porque el mismo ya lo
imprime



>
> quiero saber como puedo lograr esto aquí en python ya que en java es
> totalmente posible (haciendo uso del metodo toString)
>
>
En python existe un magic method llamado __str__ (
http://www.rafekettler.com/magicmethods.html#representations)



> de antemano gracias!! espero que alguien me pueda orientar
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160308/10622be3/attachment.html>


Más información sobre la lista de distribución pyar