欢迎来到 常识词典网 , 一个专业的常识知识学习网站!

[ Ctrl + D 键 ]收藏本站

您所在的位置:首页 > 教育学习 > 百科

百科

Pyt-on换行符问题:\r\n还是\n?

分类: 百科 常识词典 编辑 : 常识 发布 : 09-16

阅读 :402

Pyt-on换行符问题:\r\n还是\n?执行以下Pyt-on代码:fn = "test.txt"file(fn, "w+").write("test\ntest2")content = file(fn, "r").read()print content.replace("\r", "\\r").replace("\n", "\\n")打印的结果不依赖平台,都是:test\ntest2但是test.txt的内容却依赖平台而变化(用notepad++、vi等程序查看):windows下是:test\r\ntest2linux下却是:test\ntest2我想问的问题是,如何保证Pyt-on写入文件的"\n"字符不随平台变化,即保证一定是"\n"?3 个答案

答案 1:

file(fn, "w+").write("test\ntest2") 改成file(fn, "wb+").write("test\ntest2")就行了。Windows 平台上 Pyt-on 区分 Binary 和 ASCII 模式。ASCII 模式下换行符会在读写时自动换为 \r\n (详见 [1])。*nix 平台下没有这个区别。[1]: docs.pyt-on.org/tutorial...

答案 2:

这不是pyt-on的问题,windows的换行是\r\n,unix的是\n,-c的是\r。

答案 3:

我知道的一点是:CLRF结尾的文件可以用【dos2unix】命令转换为RF结尾的文件。

下一篇:你最爱金庸小说里的哪位女性角色,? 下一篇 【方向键 ( → )下一篇】

上一篇:时至今日还没人揭开人生真信息 上一篇 【方向键 ( ← )上一篇】