Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #19693

Re: 'class' named tuple

References <CACB6ZmC0JV6bY_t96KUggChb0F=pKArWKg4+hGc5Q9i1KvsO=Q@mail.gmail.com>
Date 2012-02-01 07:17 +0000
Subject Re: 'class' named tuple
From Arnaud Delobelle <arnodel@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.5289.1328080633.27778.python-list@python.org> (permalink)

Show all headers | View raw


On 1 February 2012 00:54, Emmanuel Mayssat <emayssat@gmail.com> wrote:
> I have the following program.
> I am trying to have index the attributes of an object using __getitem__.
> Reading them this way works great, but assigning them a value doesn't
> Is there a way to do such a thing?
> (Almost like a named tuple, but with custom methods)
>
> class LIter(object):
>    def __init__(self,parent=None):
>        super(LIter, self).__init__()
>        self.toto = 3
>        self.tata = 'terto'
>

Add
    _attrs = 'toto', 'tata'
    def __getitem__(self, index):
        return getattr(self, _attrs[index])
    def __setitem__(self, index, value)
        setattr(self, _attrs[index], value)

-- 
Arnaud

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: 'class' named tuple Arnaud Delobelle <arnodel@gmail.com> - 2012-02-01 07:17 +0000

csiph-web