Python字符串替换不工作的新行

时间:2011-10-19 18:20:16

标签: python string replace

我有一个关键字文件,我只想用逗号替换新行

print file("keywords.txt", "r").read().replace("\n", ", ")

尝试了\r\n

的所有变体

6 个答案:

答案 0 :(得分:5)

别忘了,这是Python!一直在寻找简单的方法...

','。join(mystring.splitlines())

答案 1 :(得分:2)

您的代码按书面形式工作。但是,这是另一种方式。

让Python为你分割行(for line in f)。使用open代替file。使用with,因此您无需手动关闭文件。

with open("keywords.txt", "r") as f:
    print ', '.join(line.rstrip() for line in f) # don't have to know line ending!

答案 2 :(得分:0)

我刚试过这个,它对我有用。你的文件是什么样的?

我的“temp.txt”文件如下所示:

  

一个
  b
  ç
  d
  ë

我的python文件有这段代码:

print file("temp.txt", "r").read().replace("\n", ", ")

这是我的输出:

  

> python temp_read.py
  a,b,c,d,e,

答案 3 :(得分:0)

您编写的代码在我创建的测试文件中为我工作。

您是否尝试将结果写回文件?

您可以尝试在十六进制编辑器中查看输入文件以查看行结尾。

答案 4 :(得分:0)

您想要替换实际的文件内容吗?像这样:

newContent = file("keywords.txt", "r").read().replace("\r", "").replace("\n", ", ")
open("keywords.txt", "w").write(newContent)

答案 5 :(得分:0)

我刚刚遇到了同样的问题,这是它的解决方案:

phones = arr[8].replace("\\n", "|")