Bonjour,

Je cherche à faire une suppression de ligne dans un fichier txt.
Au préalable dans mon code, j'ajoute une liste d'étudiant avec des informations les concernants.
Pour la suppression de la ligne ce que j'ai fait c'est que je réécris en faite toute les lignes qui ne commence pas par la donnée en L[0].

Sauf que si je fais une boucle pour faire plusieurs fois la suppression, il m'inscrit plusieurs fois la même ligne..
Nom : exemple.PNG
Affichages : 1251
Taille : 8,3 Ko


Voici mon script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def supprimer_un_etudiant (N):
    fichier = open('liste des étudiants.txt', "r")
    etudiant_present = []
 
    nouvelle_saisie4 = "O"
    while nouvelle_saisie4 == "O":
        saisie = input("Quel ligne voulez vous supprimer ? Renseignez le n° étudiant correspondant : ")
        fichier = open('liste des étudiants.txt', "r")
        for line in fichier :
            fichier = open('liste des étudiants.txt', "r")
            L = line.split(";")
            if L[0] != saisie : #Par contre si je fais plusieurs delete, il me réécrie la même ligne...
                etudiant_present.append(line)
            fichier.close()
        fichier = open("liste des étudiants.txt", "w")
        fichier.writelines(etudiant_present)
        fichier.close()
        nouvelle_saisie4 = input("voulez vous supprimer un autre étudiant ? (O/N)")
merci pour votre aide
back