Python File I/O – Correct Way to Write Line to File

file-iopython

How do I write a line to a file in modern Python? I heard that this is deprecated:

print >>f, "hi there"

Also, does "\n" work on all platforms, or should I use "\r\n" on Windows?

Best Answer

This should be as simple as:

with open('somefile.txt', 'a') as the_file:
    the_file.write('Hello\n')

From The Documentation:

Do not use os.linesep as a line terminator when writing files opened in text mode (the default); use a single '\n' instead, on all platforms.

Some useful reading:

Related Question