Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #72005

Re: Loop thru the dictionary with tuples

From Roy Smith <roy@panix.com>
Newsgroups comp.lang.python
Subject Re: Loop thru the dictionary with tuples
Date 2014-05-25 09:22 -0400
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <roy-F52825.09220325052014@news.panix.com> (permalink)
References <mailman.10291.1401022510.18130.python-list@python.org>

Show all headers | View raw


In article <mailman.10291.1401022510.18130.python-list@python.org>,
 Igor Korot <ikorot01@gmail.com> wrote:

> for (key,value) in my_dict:
>     #Do some stuff
> 
> but I'm getting an error "Too many values to unpack".

Several people have already given you the right answer, so I'll just 
suggest a general debugging technique.  Break this down into the 
smallest possible steps and print out the intermediate values.  When you 
write:

> for (key,value) in my_dict:

two things are happening.  One is that you're iterating over my_dict, 
the other is that you're unpacking the iterated-over things.  So break 
those up into individual steps:

for thing in my_dict:
    (key, value) = thing

and see what that gives you.  Do you still get an error?  If so, does it 
occur on the "for" line or on the assignment line?  Hint: in this case, 
it will happen on the assignment line, so, your next step is to print 
everything out and see what's going on:

for thing in my_dict:
    print thing
    (key, value) = thing

At this point, it should be obvious what's going on, but just in case 
it's not, sometimes I find it useful to be even more verbose:

for thing in my_dict:
    print type(thing), repr(thing)
    (key, value) = thing

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Loop thru the dictionary with tuples Igor Korot <ikorot01@gmail.com> - 2014-05-25 05:55 -0700
  Re: Loop thru the dictionary with tuples Paul Rubin <no.email@nospam.invalid> - 2014-05-25 05:59 -0700
    Re: Loop thru the dictionary with tuples Tim Chase <python.list@tim.thechases.com> - 2014-05-25 08:07 -0500
  Re: Loop thru the dictionary with tuples Roy Smith <roy@panix.com> - 2014-05-25 09:22 -0400
    Re: Loop thru the dictionary with tuples Chris Angelico <rosuav@gmail.com> - 2014-05-25 23:58 +1000

csiph-web