In article <>,
 Igor Korot <> 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 

> 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

Reply via email to