Re: Text file with mixed end-of-line terminations

2011-09-01 Thread woooee
You can use f.read() to read the entire file's contents into a string,
providing the file isn't huge.  Then, split on \r and replace \n
when found.
A simple test:
input_data = abc\rdef\rghi\r\njkl\r\nmno\r\n
first_split = input_data.split(\r)
for rec in first_split:
rec = rec.replace(\n, )
print rec
-- 
http://mail.python.org/mailman/listinfo/python-list


Text file with mixed end-of-line terminations

2011-08-31 Thread Alex van der Spek

I have a text file that uses both '\r' and '\r\n' end-of-line terminations.

The '\r' terminates the first 25 lines or so, the remainder is termiated 
with '\r\n'


Reading this file like this:


for line in open(filename,'r'):
   line= #Do whatever needs doing...


The first line read is actually a string consiting of the first 25 lines.
The readline() method does the same thing.

Is there a way to make it read one line at a time, regardless of the line 
termination?


By the way, the newlines attribute reports None after reading a few lines. I 
tried on Linux and Windows. I use the standard binaries as distributed.


Thanks in advance,
Alex van der Spek


--
http://mail.python.org/mailman/listinfo/python-list


Re: Text file with mixed end-of-line terminations

2011-08-31 Thread Chris Rebert
On Wed, Aug 31, 2011 at 12:37 PM, Alex van der Spek zd...@xs4all.nl wrote:
 I have a text file that uses both '\r' and '\r\n' end-of-line terminations.

 The '\r' terminates the first 25 lines or so, the remainder is termiated
 with '\r\n'
snip
 Is there a way to make it read one line at a time, regardless of the line
 termination?

Universal Newline Support
http://www.python.org/dev/peps/pep-0278/

http://docs.python.org/library/functions.html#open
(Modes involving U)

Cheers,
Chris
-- 
http://mail.python.org/mailman/listinfo/python-list