Why Python language does not have a writeln() method?

前端 未结 5 505
情话喂你
情话喂你 2020-12-30 23:47

If we need to write a new line to a file we have to code:

file_output.write(\'Fooo line \\n\')

Are there any reasons why Python does not ha

5条回答
  •  青春惊慌失措
    2020-12-31 00:37

    It was omitted to provide a symmetric interface of the file methods and because a writeln() would make no sense:

    • read() matches write(): they both operate on raw data
    • readlines() matches writelines(): they both operate on lines including their EOLs
    • readline() is rarely used; an iterator does the same job (except for the optional size param)

    A writeline() (or writeln()) would be essentially the same as write(), since it wouldn't add an EOL (to match the behavior of writelines()).

    The best way to mimic a print to a file is to use the special print-to-file syntax of Python 2.x or the file keyword argument of the print() function, like Daniel suggested.

    Personally, I prefer the print >>file, ... syntax over file.write('...\n').

提交回复
热议问题