如果整个字符串包含特定的字母/字符,则将其替换...
我有一个包含多行的文本文件(myFile.txt),例如:
热狗 目标
山羊
我想做的是以下内容:
如果文件中的任何单词/字符串包含字符'go',则将其替换为全新的单词/字符串(“boat”),因此输出将如下所示:
热狗 船
船
我如何在Python 2.7中实现这一目标?
答案 0 :(得分:0)
听起来就像你想要这样的东西:
with open('myFile.txt', 'r+') as word_bank:
new_lines = []
for line in word_bank:
new_line = []
for word in line.strip().split():
if 'go' in word:
new_line.append('boat')
else:
new_line.append(word)
new_lines.append('%s\n' % ' '.join(new_line))
word_bank.truncate(0)
word_bank.seek(0)
word_bank.writelines(new_lines)
打开文件进行读写,迭代将每行分成组成单词并查找“go”替换的实例。保留在列表中,因为您不想要修改您正在迭代的内容。你会度过难关。构造完成后,截断文件(擦除它)并写下你想出的文件。请注意,我最后改为明确'\n'
,因为writelines
不会为您做到这一点。