写“\n”时,为什么要替换两个字符?

when write "\n", why two characters are replaced?

test.txt:

12345

代码:

dfh = open("test.txt", "r+")
dfh.seek(0, 0)
dfh.write("\n")
dfh.close()

输出:

(empty line)
345

我预计输出是

(empty line)
2345

为什么“\n”要替换两个字符?

在您的情况下,我认为您使用的是 windows,因为 windows 使用 2 个字符 \r\n 换行。

引用自another Whosebug post