Line terminators in Python?
Rob Gaddi
rgaddi at highlandtechnology.invalid
Fri Sep 29 14:38:55 EDT 2017
On 09/29/2017 10:54 AM, Stefan Ram wrote:
> In some languages, printing »'\n'«, the Unicode code point 10,
> will have the effect of printing a line terminator, which might
> mean that the output device actually receives »\r\n«.
>
> The line terminator ostensibly depends on the operating
> system, but actually it depends on the output system. E.g.,
> under one operating system the console might accept another
> set of line separators than an editor. (Under Windows,
> »wordpad« accepts »\n«, while »notepad« requires »\r\n«.)
>
> What is the recommended way to terminate a line written with
> Python? Is it »\n« or something else? For example, in Java,
> in some cases, one should terminate the line with the value
> of »java.lang.System.lineSeparator()« which might or might
> not be equal to the value of »"\n"«.
>
> Does it possibly depend on the entity being written to, which
> might be
>
> - the Python console,
> - the IDLE console,
> - the operating system console or
> - a text file?
>
As everyone else has said; for general purpose (any of your cases) use
you should always just use '\n' and it automagically works. The only
time I've ever needed to explicitly worry about '\r' is communicating
over sockets or serial ports to devices. And in those cases you need to
stuff them with bytes rather than str anyhow, so you're already down in
the gory bits.
--
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order. See above to fix.
More information about the Python-list
mailing list