2017-04-17 1 views
2

Je suis débutant en python et je pourrais avoir besoin d'aide. Merci beaucoup. Je suis confus sur la façon de réellement supprimer une ligne où vous choisissez la ligne en entrant l'information.python - Comment supprimer une ligne d'un fichier texte?

dans mon dossier:

PSP0101 
PCT0101 
PYT0101 

Comment puis-je supprimer PSP0101 où je peux entrée PSP0101 et il disparaîtra du fichier?

+0

Possible duplication de [Suppression d'une ligne spécifique dans un fichier (python)] (http : //stackoverflow.com/questions/4710067/deleting-a-specific-line-in-a-file-python) –

Répondre

1

Vous pouvez utiliser input() puis fichier texte ouvert en mode r+:

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() 

Vous pouvez vérifier que cela a été réalisée à l'aide d'un éditeur de texte ou python:

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

Sortie:

PCT0101 
PYT0101