'Gets a list of lists and returns a flat list'

def flatten_list(self, _list):

    for el in _list:
        if (isinstance(el, collections.Iterable) and (not isinstance(el, basestring))):
            for sub in self.flatten_list(el):
                (yield sub)
        else:
            (yield el)
