Python:我想搜索一条线并替换一行



我想搜索一行并替换file.txt,

CURRENT_BUILD = 111111

CURRENT_BUILD = 221111

使用python。

您可以通过文件中的行迭代,将其保存到list,然后将列表输入文件,逐行,如有必要:

with open('file.txt') as f:
    lines = f.readlines()
with open('file.txt', 'w+') as f:
    for line in lines:
        if line == 'CURRENT_BUILD = 111111n':
            f.write('CURRENT_BUILD = 221111n')
        else:
            f.write(line)
CURRENT_BUILD = '111111'
print (CURRENT_BUILD.replace('111111', '221111'))

替换()的语法为:

str.replace(old, new [, count])

旧的 - 旧子字符串,您想替换

新的 - 新的子字符串将取代旧的子字符串

count(可选) - 您想用新子字符串替换旧子字符串的次数

如果未指定计数,请替换()方法将旧子字符串的所有出现替换为新的子字符串。

我不确定这是否是您的意思

编辑

如果是在文本中替换您想要的,那将是您最好的选择。

import fileinput
with fileinput.FileInput(filename, inplace=True, backup='.bak') as file:
for line in file:
    print(line.replace(text_to_search, replacement_text), end='')

信用@jfs中的@jfs如何使用python?

搜索和替换文件中的文本

最新更新