r <rt8...@gmail.com> wrote: >here is what i have, it would seem stupid to use a conditional in each >method like this... > >def method(self, other): > if isinstance(other, Point2d): > x, y = origin.x, origin.y > else: > x, y = origin[0], origin[1] > #modify self.x & self.y with x&y
Here's another alternative (I'd've gone with the subclassing tuple if writing this from scratch): class Point2d(object): ... def __getitem__(self, i): if not 0 <= i <= 1: raise IndexError return getattr(self, ['x', 'y'][i]) def method(self, other): x, y = other[0], other[1] ... -- \S -- si...@chiark.greenend.org.uk -- http://www.chaos.org.uk/~sion/ "Frankly I have no feelings towards penguins one way or the other" -- Arthur C. Clarke her nu becomeþ se bera eadward ofdun hlæddre heafdes bæce bump bump bump
-- http://mail.python.org/mailman/listinfo/python-list