programming container object
Paul McGuire
ptmcg at austin.rr.com
Mon Dec 17 03:31:13 EST 2007
On Dec 17, 1:18 am, "bambam" <da... at asdf.asdf> wrote:
> I wish to create a generic container object, devlist, such that
>
> devlist.method(arguments)
>
> runs as
>
> for each dev in devlist.pool:
> dev.method(arguments)
>
> and
> s = devlist.method(arguments)
>
> runs as
>
> for each dev in devlist.pool:
> s.append(dev.method(arguments))
>
> ...but it is outside my ability to do so.
>
> Can anyone provide an example of how to do that?
>
> Thanks,
> Steve
Ok, I'll take a stab at it.
-- Paul
class DevList(object):
def __init__(self, objs):
self.devpool = objs
def __getattribute__(self,attrname):
if attrname == "devpool":
return object.__getattribute__(self,attrname)
def ret(*args):
return [ getattr(p,attrname)(*args) for p in
self.devpool ]
return ret
dl = DevList([1,2,3])
print dl.__str__()
prints:
['1', '2', '3']
More information about the Python-list
mailing list