用撇号将文件中的每一行括起来的 Python 脚本



我正在尝试运行一个Python脚本,该脚本获取输入文件,操作其内容并将结果写入输出文件。

我想用引号将每一行括起来。 目前我创建了下面的脚本。

import sys
import re
inFile = sys.argv[1]
outFile = sys.argv[2]
with open(inFile,'r') as i:
lines = i.readlines()

def manipulate_data(lines):
content = [x.rstrip('n') for x in lines]
res = [re.sub(r"(.+)", r"'g<0>',", y) for y in content]
return res

processedLines = manipulate_data(lines)
with open(outFile,'w') as o:
for line in processedLines:
o.write(line)

我用python3 script.py input.txt output.txt运行它

它运行,但我希望更改它,以便它逐行写入输出文件。我也觉得我不必要地使用了两次[do_something for something in somethings]

我怎样才能达到我想要的结果?

您可以在读取文件时简单地进行字符串格式化,并将更新的字符串写入输出文件!

with open(inFile,'r') as f, open(outFile,'w') as w:
for line in f.readlines():
w.write("'%s'n" % line.rstrip('n'))

您可以从一个文件中读取行,修改和写入另一个文件,所有这些都可以一次性完成:

with open(inFile, 'r') as inf, open(outFile, 'w') as outf:
for line in inf:
outf.write('"{}"n'.format(line.strip('n')))

最新更新