view flatten_lines.py @ 318:f44ad8de0d17

more flatten_lines work
author cat@eee
date Thu, 11 Feb 2010 11:25:35 -0500
parents de23e595bb5c
children c58cd7e48db7
line wrap: on
line source

import doctest
def flatten(texts):
    '''
    >>> flatten([['cow', 'cat'], '', 'fish', ['bird']])
    ['cow', 'cat', 'fish', 'bird']
    '''
    result = []
    if isinstance(texts, basestring):
        result.extend(texts.splitlines())
    else:
        for text in texts:
            result.extend(flatten(text))
    result = [r.strip() for r in result if r.strip()]
    return result
doctest.testmod()

class LineList(list):
    def __add__(self, newmember):