A voir également:
- Sed supprimer ligne commençant par
- Supprimer une page word - Guide
- Supprimer compte instagram - Guide
- Aller à la ligne excel - Guide
- Site de vente en ligne particulier - Guide
- Partager photos en ligne - Guide
4 réponses
Utilisateur anonyme
25 févr. 2014 à 13:15
25 févr. 2014 à 13:15
Tu aurais un exemple de fichier à traiter à mettre en pièce jointe pour qu'on teste chez nous ?
Bonjour,
Voici un exemple du fichier que je doit traiter, J'ai fait quelque modification car ce sont des fichier confidentiel, et je ne suis que stagiaire .. Je vous rappel que je veut seulement conserver les lignes commençant par !* ________________________________________________________________________________________________________________
! ! ! ! !
! Cpte annexe Ent Part Dev Pério ! Montant ca EU 2013 ! Montant ca EU 2012 ! Montant ca EU 2011 !
!__________________________________________!_______________________!______________________!______________________!
!!
! ! ! ! !
!* 00012 AAAAAAAAAAAAAA ! 0.000,00 ! 0.000,00 ! 0.000,00 !
! ! ! ! !
!* 00016 AAAAAAAAAAAAAA ! 0,00 ! 0,00 ! 000,00 !
!
! ! ! ! !
J'ai essayer aussi en bash mais ça ne marche pas ...
FINDSTR "!* " C:\Users\a141726\Desktop\TestPython\LMAM1601464943.txt > C:\Users\a141726\Desktop\TestPython\LMAM1601464943v2.txt
ça me copie toutes les lignes dans le nouveau fichier
Voici un exemple du fichier que je doit traiter, J'ai fait quelque modification car ce sont des fichier confidentiel, et je ne suis que stagiaire .. Je vous rappel que je veut seulement conserver les lignes commençant par !* ________________________________________________________________________________________________________________
! ! ! ! !
! Cpte annexe Ent Part Dev Pério ! Montant ca EU 2013 ! Montant ca EU 2012 ! Montant ca EU 2011 !
!__________________________________________!_______________________!______________________!______________________!
!!
! ! ! ! !
!* 00012 AAAAAAAAAAAAAA ! 0.000,00 ! 0.000,00 ! 0.000,00 !
! ! ! ! !
!* 00016 AAAAAAAAAAAAAA ! 0,00 ! 0,00 ! 000,00 !
!
! ! ! ! !
J'ai essayer aussi en bash mais ça ne marche pas ...
FINDSTR "!* " C:\Users\a141726\Desktop\TestPython\LMAM1601464943.txt > C:\Users\a141726\Desktop\TestPython\LMAM1601464943v2.txt
ça me copie toutes les lignes dans le nouveau fichier
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
25 févr. 2014 à 16:19
25 févr. 2014 à 16:19
Salut Aku,
Un truc comme cela devrait faire l'affaire, je pense :
Dal
Un truc comme cela devrait faire l'affaire, je pense :
fichier_in = open("fichier_originel.txt","r") fichier_out = open("extraction.txt", "w") for ligne in fichier_in: if ligne.startswith("!*"): fichier_out.write(ligne) fichier_in.close() fichier_out.close()
Dal
Merci pour ton aide Dal, ton script me parait tout à fait fonctionnel, mais bizarrement le fichier de sortie est vide ...
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
25 févr. 2014 à 17:06
25 févr. 2014 à 17:06
Chez moi il n'est pas vide.
Essaye de rajouter fichier_out.flush() avant le fichier_out.close().
Essaye de rajouter fichier_out.flush() avant le fichier_out.close().
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié par [Dal] le 25/02/2014 à 18:07
Modifié par [Dal] le 25/02/2014 à 18:07
J'utilise Python 2.7.3 sous Cygwin.
C'est bizarre. En principe le flush n'est pas nécessaire si tu fermes bien le fichier.
Cela dit, je ne pratique pas Python depuis très longtemps, et il y a peut-être un truc qui m'échappe.
Tu pourrais essayer ainsi aussi :
ce qui fermera fichier_out même si une exception se produit.
Sinon, tu devrais re-poster ton code entier et voir si quelqu'un de plus expert que moi en Python peut trouver ce qui ne va pas dans ton code.
Dal
C'est bizarre. En principe le flush n'est pas nécessaire si tu fermes bien le fichier.
Cela dit, je ne pratique pas Python depuis très longtemps, et il y a peut-être un truc qui m'échappe.
Tu pourrais essayer ainsi aussi :
fichier_in = open("fichier_originel.txt","r") with open("extraction.txt", "w") as fichier_out: for ligne in fichier_in: if ligne.startswith("!*"): fichier_out.write(ligne) fichier_in.close()
ce qui fermera fichier_out même si une exception se produit.
Sinon, tu devrais re-poster ton code entier et voir si quelqu'un de plus expert que moi en Python peut trouver ce qui ne va pas dans ton code.
Dal