Some interesting performance comparisons, under Python 3.2. Times are
relative, and are for an initial list of tuples with 500,000 items.
(1) ans = []
#relative time: 298
for item in lst:
ans += list(item)
return ans
(2) return [item[0] for item in lst] #relative
time: 106
(3) from operator import itemgetter #relative time: 84
return list(map(itemgetter(0), lst))
(4) import itertools
#relative time: 63
return list(itertools.chain.from_iterable(lst))
(5) return [x for (x,) in lst]
#relative time: 52
With the caveat that 'your mileage may vary'
Regards,
Mark
--
http://mail.python.org/mailman/listinfo/python-list