This (or something really similar) has been brought up recently on this list.

Please go look for that, and see how it was resolved at the time.

But for now: -1 -- this is not THAT common a pattern, and to the extent that it is, this would encourage people to over-use it, and lead to errors.

I find that newbies are already confused enough about scope, and why the "x" in one place is not the same as the "x" in another. This would just blur that line even more.


On Thu, Apr 16, 2020 at 8:49 AM Rhodri James <> wrote:
On 16/04/2020 16:23, wrote:
> I'm opening this thread to discuss and collect feedback on a language change to support keyword arguments to be self-assigned using variables names.
> Proposal
> --------
> Taking the syntax from [bpo-36817]( which just [made it to Python 3.8]( the `<keyword name>=` syntax would be valid and have the the same effect as `<keyword name>=<keyword name>`, so these two statements would be equivalent:
> ```python
> foo(bar=bar, qux=qux)
> foo(bar=, qux=)
> ```

I wasn't in favour of the original proposal, and that at least had the
excuse of just being for debugging.  Imagine how much less I am enthused
by this.

Explicit is better than implicit.

Rhodri James *-* Kynesim Ltd
Python-ideas mailing list --
To unsubscribe send an email to
Message archived at
Code of Conduct:

Christopher Barker, PhD

Python Language Consulting
  - Teaching
  - Scientific Software Development
  - Desktop GUI and Web Development
  - wxPython, numpy, scipy, Cython