Idiomatic portable way to strip line endings?

Skip Montanaro skip at
Sun Dec 16 13:50:45 EST 2001

    > I've been trying to figure out the canonical way to strip the line
    > endings from a text file.

I suspect the high frequency of

    line = line[:-1]

simply means that most people haven't worried too much about their code
running across multiple platforms.  I know for most of the code I've written
I've never worried too much about it.  Still, how about:

    line = re.sub(r'(\r\n|\r|\n)$', '', line)

?  In a little filter script I use to convert to canonical line endings I

    sys.stdout.write(re.sub(r'\r\n|\r', r'\n',

(This for a set of filters that processes web pages in various ways.)

Skip Montanaro (skip at -

More information about the Python-list mailing list