我需要逐行读取文件,并且必须避免以“RE:”开头的行。我使用这个脚本来完成任务:
from glob import glob
import fileinput
with open('output.txt', 'w') as out:
for line in fileinput.input(glob('*')):
if line !='RE:' in line:
out.write(line)
但是它的工作相反,它只是打印以'RE:'开头的行。
出了什么问题?怎么可以修改呢?
答案 0 :(得分:3)
像这样更改你的if语句,
if not line.startswith('RE:'):
如果您不想触摸以某些特定字符开头的行,请使用startswith
功能以及not
。
示例:强>
>>> s = '''foo
RE:jhjah
bar'''.splitlines()
>>> for line in s:
if not line.startswith('RE:'):
print(line)
foo
bar
>>>