Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

[Python]-remplacer premiere ligne d un fichier

  1. mAx6010

    Date d'inscription
    juillet 2007
    Localisation
    Lucerne (CH)
    Messages
    358

    [Python]-remplacer premiere ligne d un fichier

    Hello,
    Sous python j aimerai ouvrir un fichier texte , remplacer la premiere ligne, et sauver le fichier.
    Je suis sous windows.
    Il n existe rien de simple comme "sed" sous unix ?

    C est un fichier script pour plotter une courbe sous gnuplot.
    J aimerai remplacer donc la premiere ligne qui definit un parametre:
    data='mes_donnes_1.txt'

    rien de bien sorcier, pourtant je tourne en rond...

    Merci par avance

    Maxime

    -----

     


    • Publicité



  2. pm42

    Date d'inscription
    juillet 2015
    Messages
    3 879

    Re : [Python]-remplacer premiere ligne d un fichier

    Citation Envoyé par mAx6010 Voir le message
    Il n existe rien de simple comme "sed" sous unix ?
    Non parce qu'en Unix, on ne sait pas faire non plus même avec sed.
    Il faut créer un nouveau fichier en écriture puis remplacer l'ancien par le nouveau dans lequel on aura écrit la nouvelle 1ère ligne puis toutes les autres du fichier source.

    En Python, faire la même chose est simple également modulo la gestion des erreurs (fichier en lecture-seule, espace disque plein qui empêche la création du nouveau, impossibilité d'effacer l'ancien...)
     

  3. mAx6010

    Date d'inscription
    juillet 2007
    Localisation
    Lucerne (CH)
    Messages
    358

    Re : [Python]-remplacer premiere ligne d un fichier

    Citation Envoyé par pm42 Voir le message
    Non parce qu'en Unix, on ne sait pas faire non plus même avec sed.
    Oui c est vrai que je devais creer un autre fichier
    J ai la memoire qui flanche...

    Bon comme j ai que 5 lignes dans mon fichier, je vais essayer de les stocker dans une liste, et faire la manip avec l index adequat
     

  4. mAx6010

    Date d'inscription
    juillet 2007
    Localisation
    Lucerne (CH)
    Messages
    358

    Re : [Python]-remplacer premiere ligne d un fichier

    Citation Envoyé par mAx6010 Voir le message
    Bon comme j ai que 5 lignes dans mon fichier, je vais essayer de les stocker dans une liste, et faire la manip avec l index adequat
    ... et ça marche nickel
     

  5. polo974

    Date d'inscription
    février 2007
    Messages
    8 326

    Re : [Python]-remplacer premiere ligne d un fichier

    Citation Envoyé par pm42 Voir le message
    Non parce qu'en Unix, on ne sait pas faire non plus même avec sed.
    Mais si, on sait faire (ex: sur un fichier gag, remplace la première ligne):
    sed '1 s/.*/ah que coucou/' -i gag


    et puis il y a cygwin qui donne accès aux indispensables sous windows (même un serveur ssh, ça vous change la vie...).
    Le mieux est l'ennemi du bien, et c'est bien mieux comme ça...
     


    • Publicité



  6. pm42

    Date d'inscription
    juillet 2015
    Messages
    3 879

    Re : [Python]-remplacer premiere ligne d un fichier

    Citation Envoyé par polo974 Voir le message
    Mais si, on sait faire (ex: sur un fichier gag, remplace la première ligne):
    C'est une option spécifique à la version Gnu. Elle n'est pas dispo en général et par ex, pas sur AIX ou Solaris (voir les demandes StackOverflow à ce propos).
    C'est sans doute une adaptation de Perl qui a de mémoire été une des 1ères commandes à proposer cette option -i.

    Dans le contexte de la question, cela ne change pas grand chose : -i est implémenté exactement comme décrit avec un 2nd fichier temporaire...
     

  7. polo974

    Date d'inscription
    février 2007
    Messages
    8 326

    Re : [Python]-remplacer premiere ligne d un fichier

    bon, alors il suffit d'utiliser ed:
    Code:
    echo '1d
    i
    ah que coucou
    .
    wq ' | ed gag
    Le mieux est l'ennemi du bien, et c'est bien mieux comme ça...
     


    • Publicité







Sur le même thème :





 

Discussions similaires

  1. Lire un fichier son (Wav 16bits) sur Python
    Par gav91 dans le forum Programmation et langages, Algorithmique
    Réponses: 6
    Dernier message: 30/03/2015, 15h55
  2. exécution d'un fichier python rattaché à un fichier kivy
    Par roadbecri dans le forum Programmation et langages, Algorithmique
    Réponses: 7
    Dernier message: 24/11/2014, 15h43
  3. Python correction fichier
    Par berguem40 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 07/08/2012, 01h15
  4. lecture fichier Python
    Par berguem40 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 09/09/2011, 12h25
  5. Bloquer sous une ligne python.
    Par mirkwood dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 11/10/2009, 12h28