On 05/07/2012 08:33 PM, Chris Rebert wrote:
On Mon, May 7, 2012 at 8:15 PM, Charles Hixson
<charleshi...@earthlink.net>  wrote:
class Node:

    def    __init__(self, nodeId, key, value, downRight, downLeft, parent):
        dirty    =    True
        dlu    =    utcnow()
        self.node    =    [nodeId, downLeft, [key], [value], [downRight],
parent, dirty, dlu]
Why are you using a single opaque list instead of separate, meaningful
attributes for each datum?

Cheers,
Chris

Because that's the most reasonable implementation. The various list items would not be the same from instance to instance. I could pull the top-level list items off as separate variables, but this would leave the problem exactly where it is, and ordinary properties allow me to address the entries like id, and dlu without problem. But the list variables are a separate problem, and not so readily soluble.

FWIW, if I must I can operate with only a list, and define functions to do the access and manipulation. I'd rather not, which is why I'm exploring whether an indexed property is feasible.

Note that I *could* return, e.g., the entire keys list, but I'd rather use a bit more data protection than that. Which is what an indexed setter property would allow. And node.key[3] is as fully informative a name as I can construct for that entry. But the number of items in the keys list varies from node to node, so defining a key3 property is not reasonable. (Besides, that's so ugly that I'd rather use a function, even though indexing in Python really should be done with brackets rather than parens.)

--
Charles Hixson

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to