Thanks Arnaud List comprehension method really works nicely.sorry for late reply.
On Mon, May 7, 2012 at 7:10 PM, Arnaud Delobelle <arno...@gmail.com> wrote: > On 7 May 2012 12:31, Nikhil Verma <varma.nikhi...@gmail.com> wrote: > > HI All > > > > I was clearing my concepts on dictionary and stuck in this problem. > > I have a dictionary which i have formed by using zip function on two > list so > > that one list (which i have hardcoded) becomes the keys and the other > list > > becomes its values. > > > > Now i want to know how can i get the values of keys at once if i pass the > > keys in a dictionary. > > > > Let say I have a dictionary > > > > mydict = {'a':'apple' , 'b':'boy' ,'c' : 'cat', 'd':'duck','e':'egg'} > > > > Now if i do :- > > > > mydict.get('a') > > 'apple' > > mydict['a'] is the usual way to get the value associated with a key. > The difference is that it will throw an exception if the key doesn't > exist, which is most of the time the sanest thing to do. > > > What i want is some i pass keys in get and in return i should have all > the > > values of those keys which i pass. > > > > ################## > > mydict.get('a','b','c') ###demo for what i want > > 'apple','boy','cat' ### Output i want > > ################# > > 1. You can use a list comprehension > > >>> [mydict[k] for k in 'a', 'b', 'c'] > ['apple', 'boy', 'cat'] > > 2. You can use map (for python 3.X, you need to wrap this in list(...)) > > >>> map(mydict.__getitem__, ['a', 'b', 'c']) > ['apple', 'boy', 'cat'] > > 3. You can use operator.itemgetter > > >>> from operator import itemgetter > >>> itemgetter('a', 'b', 'c')(mydict) > ('apple', 'boy', 'cat') > > -- > Arnaud > -- Regards Nikhil Verma +91-958-273-3156
-- http://mail.python.org/mailman/listinfo/python-list