> On 8 Jun 2022, at 16:09, Rob Cliffe via Python-ideas > <python-ideas@python.org> wrote: > > > >> On 08/06/2022 15:40, Eric V. Smith via Python-ideas wrote: >> >>> On 6/7/2022 4:59 PM, Chris Angelico wrote: >>> On Wed, 8 Jun 2022 at 00:36, <martineznicolas41...@gmail.com> wrote: >>>> Hello! >>>> >>>> Do you know if there has been discussions around why is the default >>>> argument is positional only in the dict methods get and pop? >>>> >>>> I think >>>> >>>> ``` >>>> d.get(key, default=3) >>>> ``` >>>> >>>> way more readable than >>>> >>>> ``` >>>> d.get(key, 3) >>>> ``` >>>> >>>> specially since max and min builtin functions use default as a keyword >>>> argument. >>> With min and max, it MUST be a keyword argument, because positional >>> arguments are the values to be compared. So I think the main reason is >>> "because nobody ever bothered to do it". If there's enough value in >>> it, that could probably be changed, although mere consistency alone >>> isn't a very strong argument. >> >> I suspect it's been this way because the API is so old. Now that we have >> Argument Clinic it would be easier to implement as a keyword argument. But >> there may also be a performance issue with keyword arguments vs. positional. >> People are touchy when it comes to dicts! >> >> Eric > True (and rightly so). But all that is required is that there is no > significant slow-down when the positional argument is used. > Does that sound feasible? > People can always choose not to use the keyword form.
Won’t the code have to check for a keyword even if a positional is used and therefore it must be slower. Need a benchmark to know by how much. I’m one of those people that notice uS slow does in access to some APIs. Barry > Best wishes > Rob Cliffe >> >> _______________________________________________ >> 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/73OOS3YPUDTZVWFJ5V44X66XZCNXRQV6/ >> Code of Conduct: http://python.org/psf/codeofconduct/ > > _______________________________________________ > 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/LMVZXUZQAJ4PRKWGTQDP45FS5YDRKRZG/ > Code of Conduct: http://python.org/psf/codeofconduct/ _______________________________________________ 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/SF2TJG6XL37UMZOQCPGZDV5XUDKCKETW/ Code of Conduct: http://python.org/psf/codeofconduct/