Steven D'Aprano <st...@remove-this-cybersource.com.au> writes: > def foo(self, x, y=None): > if y is None: > y = self.a > > I don't find that clumsy in the least. I find it perfectly readable and a > standard idiom.
That has the same problem as the earlier version. If the person passes None, they get self.a. I prefer: sentinel = object() ... def foo(x, y=sentinel): if y is sentinel: y = self.a -- http://mail.python.org/mailman/listinfo/python-list