Supprimer les premières lignes d'un fichier texte
dino.adnane
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
dino.adnane Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
dino.adnane Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Excusez-moi je suis débutant en python et je suis vraiment bloqué a ce niveau là
le but du code est de supprimer les premières lignes du fichier texte et de supprimer l'espace qui est avant chaque mesure.
Merci d'avance
Excusez-moi je suis débutant en python et je suis vraiment bloqué a ce niveau là
le but du code est de supprimer les premières lignes du fichier texte et de supprimer l'espace qui est avant chaque mesure.
Merci d'avance
A voir également:
- Supprimer une ligne d'un fichier texte python
- Supprimer rond bleu whatsapp - Guide
- Fichier bin - Guide
- Impossible de supprimer un fichier - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
4 réponses
Salut.
Le plus simple, c'est d'héberger le fichier data.txt pour que je puisse faire un code fonctionnel ^^
Une toute petite question : le fichier data.txt est bien dans le même dossier que le script python ?
Dans le shell, les lignes n'apparaissent pas ?
Normal, vu que je n'ai pas codé cette partie. ^^
++
Le plus simple, c'est d'héberger le fichier data.txt pour que je puisse faire un code fonctionnel ^^
Une toute petite question : le fichier data.txt est bien dans le même dossier que le script python ?
Dans le shell, les lignes n'apparaissent pas ?
il ne génère même pas le nouveau_fichier.
Normal, vu que je n'ai pas codé cette partie. ^^
++
Lu'
Merci pour le fichier, cela m'a permis de savoir pourquoi ça ne marchait pas....
X_Value Voltage Comment ==== c'est faux !
En copiant directement cette ligne, et en la déclarant en tant que variable, on s'aperçoit qu'il y a une tabulation entre X_Value et Voltage. Et non pas un espace.
Essaye ceci :
Là, je ne fais que mettre les lignes dans une variable.
A toi d'enregistrer le contenu de cette variable dans un fichier.
++
Merci pour le fichier, cela m'a permis de savoir pourquoi ça ne marchait pas....
X_Value Voltage Comment ==== c'est faux !
En copiant directement cette ligne, et en la déclarant en tant que variable, on s'aperçoit qu'il y a une tabulation entre X_Value et Voltage. Et non pas un espace.
Essaye ceci :
import os lignes="" fichier = "c:/users/tomce/desktop/data.txt" nouveau_fichier = "c:/users/tomce/desktop/nouveau_fichier.txt" element = 'X_Value Voltage Comment' with open(fichier,"r") as FO: for num, line in enumerate(FO, 1): if element in line: with open(fichier,"r") as FO: for ligne in FO.readlines()[num:]: lignes+=ligne.lstrip() lignes+="\n" if lignes != "": print (lignes)
Là, je ne fais que mettre les lignes dans une variable.
A toi d'enregistrer le contenu de cette variable dans un fichier.
++
Salut.
J'ai adapté le code, pour que tu puisses créer le nouveau fichier.
A toi de l'adapter si besoin.
++
J'ai adapté le code, pour que tu puisses créer le nouveau fichier.
A toi de l'adapter si besoin.
import os import webbrowser fichier = "c:/users/tomce/desktop/data.txt" nouveau_fichier = "c:/users/tomce/desktop/data_2.txt" os.remove(nouveau_fichier) # suppression du fichier element = 'X_Value Voltage Comment' # élément à trouver, pour démarrer la boucle for with open(fichier,"r") as FO: for num, line in enumerate(FO, 1): # permet de trouver le numéro de ligne où se situe l'élément if element in line: with open(fichier,"r") as FO: for ligne in FO.readlines()[num:]: with open(nouveau_fichier,"a+") as NFO: NFO.write( ligne.lstrip()) if os.path.isfile(nouveau_fichier): webbrowser.open( nouveau_fichier )
++
Salut.
Tu cherches donc à supprimer les lignes en bleu pour ne garder que les lignes en rouge ?
Et également supprimer les espaces à gauche des lignes en rouge ?
++
Tu cherches donc à supprimer les lignes en bleu pour ne garder que les lignes en rouge ?
Et également supprimer les espaces à gauche des lignes en rouge ?
++
Merci pour votre réponse
Oui je cherche à supprimer les ligne en rouge (le texte) et l'espace qui est en rouge, donc je veux garder que les valeurs numérique(Pour cela je pense que c"est simple il me faut que remplacer "\t" par "")
Donc en total voila mon code mais j'en ai une erreur qui l’empêche à s'exécuter
Oui je cherche à supprimer les ligne en rouge (le texte) et l'espace qui est en rouge, donc je veux garder que les valeurs numérique(Pour cela je pense que c"est simple il me faut que remplacer "\t" par "")
output_numbers = [float(valeur.replace("\t","")) for valeur in txt if valeur]
Donc en total voila mon code mais j'en ai une erreur qui l’empêche à s'exécuter
txt = data.txt.split("X_Value Voltage Comment")[-1].split("\n") output_numbers = [float(valeur.replace("\t","")) for valeur in txt if valeur]
Essaye ça :
import os lignes="" fichier = "c:/users/tomce/desktop/fichier.txt" nouveau_fichier = "c:/users/tomce/desktop/nouveau_fichier.txt" element = 'X_Value Voltage Comment' with open(fichier,"r") as FO: for num, line in enumerate(FO, 1): if element in line: with open(fichier,"r") as FO: for ligne in FO.readlines()[num:]: lignes+=ligne.lstrip() lignes+="\n" if lignes != "": print (lignes)
Merci pour votre réponse rapide
Malheureusement le code ne fait rien (mais aucune erreur) il ne génère même pas le nouveau_fichier.
voila le fichier data:
LabVIEW Measurement
Writer_Version 2
Reader_Version 2
Separator Tab
Decimal_Separator ,
Multi_Headings Yes
X_Columns No
Time_Pref Absolute
Operator admin
Date 2018/05/09
Time 11:37:40,0499891300350754284
Channels 1
Samples 1000
Date 2018/05/09
Time 11:37:40,0499891300350754284
Y_Unit_Label Volts
X_Dimension Time
X0 0,0000000000000000E+0
Delta_X 0,000100
X_Value Voltage Comment
0,427676
0,427027
0,427676
0,428001
0,427676
0,427351
0,427027
0,427027
0,428326
0,427676
0,427351
0,428001
0,427351
0,427027
0,427351
0,427351
0,427676
0,426702
0,427027
0,427351
0,427676
0,427351
0,427351
Malheureusement le code ne fait rien (mais aucune erreur) il ne génère même pas le nouveau_fichier.
import os lignes="" fichier = "data.txt" nouveau_fichier = "nouveau_fichier.txt" element = 'X_Value Voltage Comment' with open(fichier,"r") as FO: for num, line in enumerate(FO, start=1): if element in line: with open(fichier,"r") as FO: for ligne in FO.readlines()[num:]: lignes+=ligne.lstrip() lignes+="\n" if lignes != "": print (lignes)
voila le fichier data:
LabVIEW Measurement
Writer_Version 2
Reader_Version 2
Separator Tab
Decimal_Separator ,
Multi_Headings Yes
X_Columns No
Time_Pref Absolute
Operator admin
Date 2018/05/09
Time 11:37:40,0499891300350754284
- End_of_Header***
Channels 1
Samples 1000
Date 2018/05/09
Time 11:37:40,0499891300350754284
Y_Unit_Label Volts
X_Dimension Time
X0 0,0000000000000000E+0
Delta_X 0,000100
- End_of_Header***
X_Value Voltage Comment
0,427676
0,427027
0,427676
0,428001
0,427676
0,427351
0,427027
0,427027
0,428326
0,427676
0,427351
0,428001
0,427351
0,427027
0,427351
0,427351
0,427676
0,426702
0,427027
0,427351
0,427676
0,427351
0,427351
voila un lien pour le télécharger
https://uncloud.univ-nantes.fr/index.php/login