As I said before, the "1,2,3" in `f(1,2,3)` has a very different meaning than 
the "1,2,3" in `d[1,2,3]`. One is a (comma-separated) list of expressions, and 
one is a single expression, a tuple.

`*(1,2,3)` does not evaluate to the tuple `(1,2,3)`, so I don't think expecting 
it to do so in the context of d[*(1,2,3)] makes sense. And, I would argue that 
having it to so would be far more inconsistent - why does it evaluate to the 
tuple `(1,2,3)` in the context of `d[*(1,2,3)]`, but not in the context of 
`f(*(1,2,3))`?

Also, from a practical perspective, what would even be the point in allowing 
the syntax here if `d[*x]` meant exactly the same thing as `d[x]` (or 
`d[tuple(x)]` if it's not already a tuple)?
_______________________________________________
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/XGYTJAM5P2BL4NM4SQUE7VLSDYB77OAU/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to