On Jul 11, 3:36 am, [EMAIL PROTECTED] wrote: > James Fassett: > > > # the first Pythonic attempt using comprehensions > > result_list = [x[0] for x in tuple_list] > > > # the final functional way > > [result_list, _] = zip(*tuple_list) > > > I really like how Python allows me to do what I feel is the most > > natural solution (for a seasoned procedural programmer) while allowing > > a satisfying path towards a more functional approach. > > The list comprehension is quite more readable to me, so I suggest you > to use it. It's probably the default way to do it in Python. > > If you want functional code this is another way (I have not tested the > relative performance but it may be quick): > > >>> tuple_list = ( > > ... ('John', 'Doe'), > ... ('Mark', 'Mason'), > ... ('Jeff', 'Stevens'), > ... ('Bat', 'Man') > ... )>>> from operator import itemgetter > >>> map(itemgetter(0), tuple_list) > > ['John', 'Mark', 'Jeff', 'Bat'] > > Bye, > bearophile
Functional programmers love pattern matching (which I think makes the code much easier to understand): [x for (x,y) in tuple_list] or map(lambda (x,y):x, tuple_list) -- http://mail.python.org/mailman/listinfo/python-list