我试图用某些条件从文件中删除行,但当我运行脚本时,它只会删除整个文件。当我将脚本更改为只“读取”行时,它返回带有搜索条件的行,但当我以“写入”模式打开文件时,它将从打印每行更改为删除每行,它将清空整个内容。你知道吗
#!/usr/bin/env python
f = raw_input('Enter filename > ')
with open(f, 'w+') as fobj:
criteria = raw_input('Enter criteria > ')
for eachLine in fobj:
if criteria in eachLine:
fobj.remove(eachLine)
break
fobj.close()
我希望你想删除有特定标准的行。您只需使用创建另一个文件,并在该文件中写入内容,如下所示:
从文档中:
因此,您正在截断包含
with open
的行上的文件。您可能希望创建一个具有不同名称的新文件,并在程序结束时重命名它。你知道吗相关问题 更多 >
编程相关推荐