On Sun, Mar 1, 2020 at 6:51 PM Christopher Barker <python...@gmail.com> wrote: SNIP
the problem here is that "iterable unpacking" (is that what we call it > now?) is pretty general, and used all over python. > ValueError: too many values to unpack (expected 2) > > Which, in fact, is what iPython already does: > > In [5]: a,b = 1,2,3 > > --------------------------------------------------------------------------- > ValueError Traceback (most recent call last) > <ipython-input-5-402193b14bdc> in <module> > ----> 1 a,b = 1,2,3 > > ValueError: too many values to unpack (expected 2) > > But not in the dict iterating case: > > In [2]: for key, val in d: > ...: print(key, val) > ...: > > --------------------------------------------------------------------------- > ValueError Traceback (most recent call last) > <ipython-input-2-8ac4fd3a14a8> in <module> > ----> 1 for key, val in d: > 2 print(key, val) > 3 > > ValueError: too many values to unpack (expected 2) > > (cause it's showing the line of code, not the run time values) > > So if possible, it would be great if error messages did generally show the > value(s) of the objects involved, if possible. > This information is certainly retrievable - but not by standard consoles. $ python -m friendly_traceback Friendly Console version 0.0.28a. [Python version: 3.7.3] >>> d = {"a": 1, "b": 2} >>> for key, value in d: ... print(key, value) ... Python exception: ValueError: not enough values to unpack (expected 2, got 1) A ValueError indicates that a function or an operation received an argument of the right type, but an inappropriate value. Execution stopped on line 1 of file '<friendly-console:2>'. -->1: for key, value in d: d: {'a': 1, 'b': 2} == André Roberge
_______________________________________________ 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/UIDNB2EZQYVUBHNMDIHJ7CZYKMRM6UJV/ Code of Conduct: http://python.org/psf/codeofconduct/