On Thu, Feb 5, 2009 at 2:37 PM, Vincent Davis <vinc...@vincentdavis.net> wrote: > Jervis Whitley wrote "Although you should really solve your problem by > thinking about it > from a completely different angle, maybe subclassing your datatype and > adding a 'name' > attribute ? I'm sure some of the others here have suggested that already." > That is beyond my current knowledge. Any suggestions for reading about this? > Thanks > Vincent Davis
Here is a short example, more information on 'Inheritance' can be obtained from http://docs.python.org/tutorial/classes.html class NamedList(list): """A List with a 'name' attribute.""" def __init__(self, name, *args, **keyword_arguments): list.__init__(self, *args, **keyword_arguments) self.name = name you can now do this x = NamedList('x', [1,2,3,4]) >>> x.name 'x' In this example I have inherited all the features of the original built-in list, and added my own initialisation method. of course this is only a minimal example and there are other approaches (such as adding an attribute at runtime) but this one is self documenting to some extent. Cheers, -- http://mail.python.org/mailman/listinfo/python-list