替换为for循环

时间:2014-04-03 15:16:35

标签: python python-2.7 python-3.x

有人可以向我解释一下。

string = "I hope 1111 someone 1111 will 1111 help me."
newString = string.replace("1111", "Hello")
print newString

给我这个:“我希望你好,有人你好,你好帮助我。”

我的输入文件每行包含1个关键字。

for line in inputfile.readlines():
    newString += string.replace("1111", line)

print newString

给我这个:“我希望你好(换行)somone你好(换行)你好(换行)帮助我” 在for循环中,如何防止我的脚本为每次替换时创建一个新行?我猜测问题是,在第一次击中时,for循环是“true”并且它重新开始,所以也许我需要在for循环中使用while循环?有人能告诉我怎么做吗?

Keyword.txt 绿色 蓝色

我希望它看起来像这样: 我希望绿色的绿色绿色会帮助我。 我希望蓝色的蓝色蓝色会帮助我。

THX。

1 个答案:

答案 0 :(得分:4)

我认为你很困惑,因为你的输出文件中仍然有新行。试试这个:

for line in inputfile.readlines():
    newString += string.replace('1111', line.strip())

print newString

文件中的每个line(自然地)后跟换行符。默认情况下strip会删除前导空格和尾随空格(包括'\n''\t')。