subclassing and defaults. There is one use case I'm not sure how to wrap my head around.
Say a class and subclass have different default arguments. And we want to pass the fact that the argument wasn't set along to the superclass. The "use None" convention works fine: def __init__(self, something=None): super().__init__(something) The superclass could define its own default. But deferred binding would not work: def __init__(self, something=an_expression): super().__init__(something) The superclass would get the result of an_expression, and not know that it should use its default. Is this an actual problem? I'm not sure -- I can't think of when I wouldn't want a subclass to override the default of the superclass, but maybe ? And of course, if you really do need that, then use a sentinel in that case :-) No one's suggesting that every default should be specified explicitly! -CHB On Tue, Oct 26, 2021 at 4:32 PM Christopher Barker <python...@gmail.com> wrote: > Well, you just repeated what I said, and then again asserted: > > On Tue, Oct 26, 2021 at 4:21 PM Chris Angelico <ros...@gmail.com> wrote: > >> The truth is that there is no value that can be a truly universal >> representation of absence, so it *always* has to be specific to each >> API. >> > > But I don't see what that's the case -- why would anyone ever need to use > a MISSING to mean anything else? If you have a different meaning, use a > different sentinel. Sure, that wouldn't be enforceable, but it sure could > be considered best practice. > > Though i suppose I'm missing something here. > > could it be a soft keyword? > > Using *a, **kw does allow us to truly omit an argument. >> > > Exactly, I don't really see why this is considered important. > > -CHB > > -- > Christopher Barker, PhD (Chris) > > Python Language Consulting > - Teaching > - Scientific Software Development > - Desktop GUI and Web Development > - wxPython, numpy, scipy, Cython > -- Christopher Barker, PhD (Chris) Python Language Consulting - Teaching - Scientific Software Development - Desktop GUI and Web Development - wxPython, numpy, scipy, Cython
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/VQXZD2SJATYR24MAKANCTVR56ZMYHVSG/ Code of Conduct: http://python.org/psf/codeofconduct/