“Acessando valores de dicionário Python com ponto” Respostas de código

Acessando valores de dicionário Python com ponto

class dotdict(dict):
    """dot.notation access to dictionary attributes"""
    __getattr__ = dict.get
    __setattr__ = dict.__setitem__
    __delattr__ = dict.__delitem__
Real Raccoon

Acessando valores de dicionário Python com ponto


class Map(dict):
    """
    Example:
    m = Map({'first_name': 'Eduardo'}, last_name='Pool', age=24, sports=['Soccer'])
    """
    def __init__(self, *args, **kwargs):
        super(Map, self).__init__(*args, **kwargs)
        for arg in args:
            if isinstance(arg, dict):
                for k, v in arg.iteritems():
                    self[k] = v

        if kwargs:
            for k, v in kwargs.iteritems():
                self[k] = v

    def __getattr__(self, attr):
        return self.get(attr)

    def __setattr__(self, key, value):
        self.__setitem__(key, value)

    def __setitem__(self, key, value):
        super(Map, self).__setitem__(key, value)
        self.__dict__.update({key: value})

    def __delattr__(self, item):
        self.__delitem__(item)

    def __delitem__(self, key):
        super(Map, self).__delitem__(key)
        del self.__dict__[key]

Crazy Cottonmouth

Respostas semelhantes a “Acessando valores de dicionário Python com ponto”

Perguntas semelhantes a “Acessando valores de dicionário Python com ponto”

Mais respostas relacionadas para “Acessando valores de dicionário Python com ponto” em Python

Procure respostas de código populares por idioma

Procurar outros idiomas de código