我想从包含多个“.c”和“.h”文件的文件夹的文件中查找字符串,例如“Version1”,并使用python文件将其替换为“Version2.2.1”。
任何人都知道如何做到这一点?
我想从包含多个“.c”和“.h”文件的文件夹的文件中查找字符串,例如“Version1”,并使用python文件将其替换为“Version2.2.1”。
任何人都知道如何做到这一点?
这是使用 os、glob 和 ntpath 的解决方案。结果保存在名为“输出”的目录中。您需要将其放在拥有 .c 和 .h 文件的目录中并运行它。
创建一个名为 output 的单独目录并将编辑后的文件放在那里:
import glob
import ntpath
import os
output_dir = "output"
if not os.path.exists(output_dir):
os.makedirs(output_dir)
for f in glob.glob("*.[ch]"):
with open(f, 'r') as inputfile:
with open('%s/%s' % (output_dir, ntpath.basename(f)), 'w') as outputfile:
for line in inputfile:
outputfile.write(line.replace('Version1', 'Version2.2.1'))
替换字符串到位:
重要!请确保在运行此之前备份您的文件:
import glob
for f in glob.glob("*.[ch]"):
with open(f, "r") as inputfile:
newText = inputfile.read().replace('Version1', 'Version2.2.1')
with open(f, "w") as outputfile:
outputfile.write(newText)