[Python-ideas] Unpacking a dict

Paul Moore p.f.moore at gmail.com
Wed May 25 14:12:37 EDT 2016


On 25 May 2016 at 17:08, Ethan Furman <ethan at stoneleaf.us> wrote:
> Here's a real-world use-case:  The main software app I support passes a
> `values` dict around like the plague.  When doing interesting stuff I often
> unpack some of the values into local variables as that reads better, types
> better, and makes it easier to reason about the code (it's on 2.7 so for
> that I'll have to use Random's  example).
>
> So for me, unpacking a dict with friendly syntax would be useful, and
> unpacking four or five keys from a 20-element dict will be far more useful
> than having to unpack them all.

Thanks. That's the sort of use case I thought might exist - and it
sounds to me as if you'd get much more benefit from a syntax that
allowed "partial" unpacking:

{"a": x, "b": y} = dict(a=1, b=2, c=3)

gives x=1, y=2 with no error.

I can't think of a good example where Michael's original proposal that
this would give a ValueError would be a better approach.
Paul


More information about the Python-ideas mailing list