2017-04-17 234 views
2

我是一名Python初学者,我可以使用一些帮助。非常感谢你。 我很困惑如何通过输入信息实际删除您选择该行的行。python-如何从文本文件中删除一行?

在我的文件:

PSP0101 
PCT0101 
PYT0101 

如何删除PSP0101在那里我可以输入PSP0101,它将从文件中消失?

+0

[删除文件中的特定行(python)](http ://stackoverflow.com/questions/4710067/deleting-a-specific-line-in-a-file-python) –

回答

1

可以在r+模式下使用input(),然后打开文本文件:

with open('test.txt', 'r+') as f: 
    t = f.read() 
    to_delete = input('What should we delete? : ').strip() # input PSP0101 
    f.seek(0) 
    for line in t.split('\n'): 
     if line != to_delete: 
      f.write(line + '\n') 
    f.truncate() 

您可以检查,这已执行使用文本编辑器,或Python:

with open('test.txt') as f: 
    print(f.read()) 

输出:

PCT0101 
PYT0101