El jue., 13 ago. 2020 a las 8:59, Victor Ramirez (<virak...@gmail.com>) escribió:
> Hola Javier, > > Una opción interesante podría ser crear una clase para esos datos y luego > imprimir con el formato que quieras: > > class Banco: > def __init__(self, element): > self.nombre = element.get('nombre') > self.isbn = element.get('ISBN') > self.valor_raspado = element.get('valor_raspado') > def __str__(self): > return "{} - {}".format(self.nombre, self.isbn) > > lista_bancos = [] > for element in fondos_coleccion: > banco = Banco(element) > lista_bancos.append(banco) > # Con el objeto banco podemos imprimir lo que queramos de forma > sencilla > print(banco) # nos imprime el resultado de la función __str__ > print(banco.isbn) # imprimimos solo los isbn > > Si es solo para tratar los datos esos y no tiene pensamiento de crecer, > igual no tiene sentido, pero si vas a trabajar bastante con los datos y a > futuro puede que crezca, esta opción podría ser interesante. > > Una mejor alternativa sería usar *dataclasses:* *@dataclassclass Coleccion: nombre: str isbn: str valor: float * * def __str__(self): return f"{self.nombre[:25]:25} - {self.isbn}"* coleccion = [Coleccion(*d.values()) for d in fondos_coleccion] for col in coleccion: print(col) Resultado: Bankinter Indice Japon, F - ES0114104039 BankinterTecnología R FI - ES0114797030 -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": https://blog.ch3m4.org Buscador Python Hispano: http://busca.ch3m4.org <https://blog.ch3m4.org/pages/busqueda-python-es/>
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es