【发布时间】:2021-12-06 22:10:58
【问题描述】:
我能找到的只是如何删除特定单词之后的所有行。 但我只想要特定数量的删除行。
例如我有一个文件包含:
FCT
Paris
105,4
35
2,161 million
LZQ
London
1572
11
8,982 million
PRI
Paris
105,4
35
2,161 million
Rome
1285
11
2,873 million
PRI
Paris
105,4
35
2,161 million
现在我想删除 Paris 之后的 3 行、Paris 之前的行和包含 Paris 本身的行。
预期的输出是:
LZQ
London
1572
11
8,982 million
什么方法只删除巴黎:
bad_words = ['Paris',]
with open('DataSystem.txt') as oldfile, open('newfile.txt', 'w') as newfile:
for line in oldfile:
if not any(bad_word in line for bad_word in bad_words):
newfile.write(line)
【问题讨论】:
-
您能否包含预期的输出。
-
到目前为止你尝试了什么?
-
所以一次读取 5 行文件,然后决定是否写出这 5 行。
-
这只是文件包含的更多示例
-
为什么“Rome”组不在您的预期输出中?