我有一个文本文件,其中的标签格式随处可见。以下是文本文件的样子:
"item1",
"item2",
"item3",
"item4",
"item5",
"item6",
"item7",
"item8",
....
实际上,文本文件应如下所示:
"item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8", ....
所以,我猜测原始文件中到处都有额外的标签\t
。
是否有可能以某种方式重新格式化此列表(比如说)Python脚本?怎么会这样做?
答案 0 :(得分:1)
如果文件不是很大,请将其作为字符串读取,从字符串中删除标签,然后将其写回:
with open(file_name) as infile:
replaced = infile.read().replace("\t","")
with open(another_file, "w") as outfile:
outfile.write(replaced)
如果文件很大,请使用.readline()
和.write()
逐行读取和写入(假设它有换行符)。如果没有换行符,请使用.read(N)
和.write()
一次循环读取和写入N个字符。在这两种情况下,在写入之前用空字符串替换所有选项卡。
答案 1 :(得分:1)
读取文件,使用str.strip
剥离行并同时写入新文件。
strip将从行的左侧和右侧剥离制表符或空格或换行符
with open('input.txt', 'r') as f, open('output.txt', 'w') as fo:
for line in f:
fo.write(line.strip())
# fo.write(line.strip() + '\n') # use this if wanna retain new line