#!/usr/bin/python
# -*- coding: utf-8 -*-

""" Clase para visualizar los atributos de una jerarquia de clases
	:author: ACL
	:version: 0.1
"""

# 2.X compatible
from __future__ import print_function


class AtributosJerarquia:
    """Definición de la clase para visualizar los atributos de una jerarquia de clases"""

    def atributosJerarquia(self):
        """Retorna los atributos de una jerarquia de clases"""
        attrs = []
        for key in sorted(self.__dict__):
            attrs.append("%s=%s" % (key, getattr(self, key)))
        return ", ".join(attrs)

    def __repr__(self):
        """Visualiza los atributos de una jerarquia de clases"""
        return "[%s: %s]" % (self.__class__.__name__, self.atributosJerarquia())

    def visualizaAtributosJeraquia(self):
        """Visualiza los atributos de una jerarquia de clases"""
        attrs = []
        for key in sorted(self.__dict__):
            attrs.append("%s=%s" % (key, getattr(self, key)))
        print("[%s: %s]" % (self.__class__.__name__, ", ".join(attrs)))
