Mike:
Many thanks for your solution. It looks really nice.


Mike Erickson wrote:
> * [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
> > Hello:
> > I have next dictionaries:
> > a={'a':0, 'b':1, 'c':2, 'd':3}
> > b={'a':0, 'c':1, 'd':2, 'e':3}
> > I want to put in a new dictionary named c all the keys that are in b
> > and re-sequence the values. The result I want is:
> > c={'a':0, 'c':1, 'd':2}
> > How can I do this with one line of instruction?
> >
> > I attempted the next but the output is not the expected:
> > c=dict([(k,v) for v,k in enumerate(a) if b.has_key(k)])
> > erroneously (for me) gets:
> > {'a': 0, 'c': 2, 'd': 3}
>
> I am not 100% I understand your questions, but k,v are being pulled from
> a, try:
>
> c=dict([(k,b[k]) for v,k in enumerate(a) if b.has_key(k)])
> 
> mike

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to