On Feb 5, 2:17 pm, mk <mrk...@gmail.com> wrote: > Hello everybody, > > Any better solution than this? > > def flatten(x): > res = [] > for el in x: > if isinstance(el,list): > res.extend(flatten(el)) > else: > res.append(el) > return res > > a = [1, 2, 3, [4, 5, 6], [[7, 8], [9, 10]]] > print flatten(a) > > [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] > > Regards, > mk
Looks fine to me. In some situations you may also use hasattr(el, '__iter__') instead of isinstance(el, list) (it depends if you want to flatten generic iterables or only lists). -- http://mail.python.org/mailman/listinfo/python-list