IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Enregistrement d'un fichier texte sous un autre nom


Sujet :

Python

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Enregistrement d'un fichier texte sous un autre nom
    Bonjour,

    J'ai un fichier texte contenant plusieurs données et parmi lesquelles, une valeur de pression.
    En fait je veux chercher la ligne ou se trouve la valeur de la pression et la modifier a chaque fois par une valeur existante dans une liste et enregistrer a chaque fois le fichier modifié sous un nom différent.
    Par exemple le fichier initiale est toto.txt, le fichier modifié en introduisant la première valeur de la liste est toto1.txt et le deuxième tot2.txt, .....etc
    j'ai pas une idée comment enregistrer un fichier text sous un nom différent.
    Pouvez vous me donner une idée comment faire ça?
    Merci d'avance

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Salut,

    Soit tu es dans une classe:
    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
     
    import os
     
    class foo(object):
        def __init__(self):
            self.counter = 0
            ...
     
        def get_next_filename(self, filename):
            while os.path.isfile(filename):
                self.counter += 1
                caput, cauda = os.path.splitext(filename)
                filename = caput + str(self.counter) + cauda
     
            return filename
    Soit non:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    counter = 0
     
    def get_next_filename(filename):
        global counter
        while os.path.isfile(filename):
            counter += 1
            caput, cauda = os.path.splitext(filename)
            filename = caput + str(counter) + cauda
     
        return filename
    Y a plus qu'à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    source = "/fichier/origine.foo"
    txt = "Ton texte modifié"
     
    with open(get_next_filename(source), "w") as outf: # ou self.get_next_filename(self.source)
        outf.write(txt)
    Plus Pythonique:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    class Foo(object):
        def __init__(self):
            self.source = "filename.txt"
            self.counter = 0
     
        def get_next_filename(self, filename):
            fname = filename
            while 1:
                while os.path.isfile(fname):
                    self.counter += 1
                    caput, cauda = os.path.splitext(filename)
                    fname = caput + str(self.counter) + cauda
     
                yield fname
     
        def baz(self):
            gen = self.get_next_filename(self.source)
            text = "Lorem ipsum ..."
     
            for i in range(5):
                print(i)
                with open(next(gen), "w") as outf:
                    outf.write(text)
     
    f = Foo()
    f.baz()

Discussions similaires

  1. [WM18] Comment enregistrer des valeurs dans un fichier texte sous IOS
    Par nico78 dans le forum Windev Mobile
    Réponses: 1
    Dernier message: 26/08/2013, 15h13
  2. Copier un fichier excel sous un autre nom en supprimant les formules
    Par Quentin15 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/06/2011, 12h19
  3. Réponses: 1
    Dernier message: 10/05/2010, 14h44
  4. Enregistrer un fichier texte sous GTK+
    Par tony952 dans le forum GTK+ avec C & C++
    Réponses: 10
    Dernier message: 19/06/2009, 02h36
  5. Sauvegarde automatique de fichier excel sous un autre nom
    Par Jonathan Raucy dans le forum Excel
    Réponses: 1
    Dernier message: 30/01/2008, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo