Je commence à peine avec python (et en programmation).
Je voudrais écrire un script qui me permettrait d'écrire dans un fichier
le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
tiissa
Sébastien Mengin wrote:
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
for nomfich in liste_fichiers: f=open(nomfich) lignes=f.readlines() f.close() fichier_sortie.writelines(lignes)
fichier_sortie.close() ####
Sébastien Mengin wrote:
Je commence à peine avec python (et en programmation).
Je voudrais écrire un script qui me permettrait d'écrire dans un fichier
le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
for nomfich in liste_fichiers: f=open(nomfich) lignes=f.readlines() f.close() fichier_sortie.writelines(lignes)
fichier_sortie.close() ####
remi
Bonjour,
Bonjour,
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Oui, à la hauteur de mes compétences ;-) Tout dépend en fait de la taille de votre document "texte" On peut imaginer qqch d'analogue à : #############" filein = open('fichier.txt','r') fileout = open('fichier_final.txt','w')
lignes = filein.readlines() # on charge dans la chaine lignes le fichier for i in lignes: fileout.write(i) # recopie ligne par ligne
filein.close() fileout.close() ############## On peut sérailiser ce type de code pour plusieurs fichiers...
Sinon, il est plus économe en temps de calcul de manipuler le fichier de sortie dans la mémoire vive directement avant de l'écrire en une seule fois :
from cStringIO import StringIO fout = StringIO() et fout.write(....)
@+ Rémi.
Bonjour,
Bonjour,
Je commence à peine avec python (et en programmation).
Je voudrais écrire un script qui me permettrait d'écrire dans un fichier
le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Oui, à la hauteur de mes compétences ;-)
Tout dépend en fait de la taille de votre document "texte"
On peut imaginer qqch d'analogue à :
#############"
filein = open('fichier.txt','r')
fileout = open('fichier_final.txt','w')
lignes = filein.readlines() # on charge dans la chaine lignes le fichier
for i in lignes:
fileout.write(i) # recopie ligne par ligne
filein.close()
fileout.close()
##############
On peut sérailiser ce type de code pour plusieurs fichiers...
Sinon, il est plus économe en temps de calcul de manipuler le fichier de
sortie dans la mémoire vive directement avant de l'écrire en une seule
fois :
from cStringIO import StringIO
fout = StringIO()
et fout.write(....)
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Oui, à la hauteur de mes compétences ;-) Tout dépend en fait de la taille de votre document "texte" On peut imaginer qqch d'analogue à : #############" filein = open('fichier.txt','r') fileout = open('fichier_final.txt','w')
lignes = filein.readlines() # on charge dans la chaine lignes le fichier for i in lignes: fileout.write(i) # recopie ligne par ligne
filein.close() fileout.close() ############## On peut sérailiser ce type de code pour plusieurs fichiers...
Sinon, il est plus économe en temps de calcul de manipuler le fichier de sortie dans la mémoire vive directement avant de l'écrire en une seule fois :
from cStringIO import StringIO fout = StringIO() et fout.write(....)
@+ Rémi.
regis
Bonjour,
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Merci d'avance.
On peut faire ça aussi
fd = open("fichier_dest","w") for fichier in liste_de_fichiers: fs = open(fichier,"r") fd.write(f.read()) fs.close() fd.close()
Régis
Bonjour,
Je commence à peine avec python (et en programmation).
Je voudrais écrire un script qui me permettrait d'écrire dans un fichier
le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Merci d'avance.
On peut faire ça aussi
fd = open("fichier_dest","w")
for fichier in liste_de_fichiers:
fs = open(fichier,"r")
fd.write(f.read())
fs.close()
fd.close()
Je commence à peine avec python (et en programmation). Je voudrais écrire un script qui me permettrait d'écrire dans un fichier le contenu (texte) d'une série d'autres fichiers.
Pouvez-vous me donner une piste pour réaliser cela facilement ?
Merci d'avance.
On peut faire ça aussi
fd = open("fichier_dest","w") for fichier in liste_de_fichiers: fs = open(fichier,"r") fd.write(f.read()) fs.close() fd.close()
Régis
Do Re Mi chel La Si Do
Bonsoir !
Petit problème de lecteur de news ?
Avec l'indentation, ce serait mieux (et aussi un 's' en plus) :
fd = open("fichier_dest","w") for fichier in liste_de_fichiers: fs = open(fichier,"r") fd.write(fs.read()) fs.close() fd.close()
bonne soirée
Michel Claveau
Bonsoir !
Petit problème de lecteur de news ?
Avec l'indentation, ce serait mieux (et aussi un 's' en plus) :
fd = open("fichier_dest","w")
for fichier in liste_de_fichiers:
fs = open(fichier,"r")
fd.write(fs.read())
fs.close()
fd.close()
Avec l'indentation, ce serait mieux (et aussi un 's' en plus) :
fd = open("fichier_dest","w") for fichier in liste_de_fichiers: fs = open(fichier,"r") fd.write(fs.read()) fs.close() fd.close()
bonne soirée
Michel Claveau
tiissa
Sébastien Mengin wrote:
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour chariot à la fin de chaque fichier (ligne) : PLusieurs méthodes : soit rajouter une ligne vide à la liste avant de
l'écrire :
lignes=f.readlines() lignes.append('n')
Soit écrire simplement une ligne vide après chaque fichier
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour
chariot à la fin de chaque fichier (ligne) :
PLusieurs méthodes : soit rajouter une ligne vide à la liste avant de
l'écrire :
lignes=f.readlines()
lignes.append('n')
Soit écrire simplement une ligne vide après chaque fichier
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour chariot à la fin de chaque fichier (ligne) : PLusieurs méthodes : soit rajouter une ligne vide à la liste avant de
l'écrire :
lignes=f.readlines() lignes.append('n')
Soit écrire simplement une ligne vide après chaque fichier
Du coup, rapidement, ça pourrait ressembler à (pas testé) :
Merci !
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour chariot à la fin de chaque fichier (ligne) :
import os
nom_du_fichier='toto' fichier_in_rep=os.listdir(".") liste_fichiers=[] for file in fichier_in_rep: if file [-8:]==".select": liste_fichiers.append(file)
fichier_sortie=open(nom_du_fichier,'w')
for i in liste_fichiers: f=open(i) lignes=f.readlines() f.close() fichier_sortie.writelines(lignes)
Du coup, rapidement, ça pourrait ressembler à (pas testé) :
Merci !
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour
chariot à la fin de chaque fichier (ligne) :
import os
nom_du_fichier='toto'
fichier_in_rep=os.listdir(".")
liste_fichiers=[]
for file in fichier_in_rep:
if file [-8:]==".select":
liste_fichiers.append(file)
fichier_sortie=open(nom_du_fichier,'w')
for i in liste_fichiers:
f=open(i)
lignes=f.readlines()
f.close()
fichier_sortie.writelines(lignes)
Du coup, rapidement, ça pourrait ressembler à (pas testé) :
Merci !
J'ai adapté en ce qui suit, mais je ne parviens pas à imposer un retour chariot à la fin de chaque fichier (ligne) :
import os
nom_du_fichier='toto' fichier_in_rep=os.listdir(".") liste_fichiers=[] for file in fichier_in_rep: if file [-8:]==".select": liste_fichiers.append(file)
fichier_sortie=open(nom_du_fichier,'w')
for i in liste_fichiers: f=open(i) lignes=f.readlines() f.close() fichier_sortie.writelines(lignes)
fichier_sortie.close()
-- Sébastien Mengin http://www.luxediteur.com
Sebastien Mengin
tiissa writes:
PLusieurs méthodes : soit rajouter une ligne vide à la liste avant de l'écrire :
lignes=f.readlines() lignes.append('n')
Soit écrire simplement une ligne vide après chaque fichier
Certes, il manque un s mais aucun souci d'indentation :) (mozilla news)
Regis
Bonsoir !
Petit problème de lecteur de news ?
Avec l'indentation, ce serait mieux (et aussi un 's' en plus) :
fd = open("fichier_dest","w") for fichier in liste_de_fichiers: fs = open(fichier,"r") fd.write(fs.read()) fs.close() fd.close()
bonne soirée
Michel Claveau
Paul Gaborit
À (at) Wed, 20 Apr 2005 09:41:47 +0400, regis écrivait (wrote):
Certes, il manque un s mais aucun souci d'indentation :) (mozilla news)
Vous avez bien un problème d'indentation même si vous ne le voyez pas : vous avez utilisé le caractère tabulation dans votre message. Or ce caractère n'est pas toujours interprété avec la même taille (en nombre d'espaces équivalents) suivant les plateformes.
Donc ce n'est pas parce que votre message se relit correctement dans votre lecteur de news (et le mien au passage) que c'est le cas pour tout le monde.
Il faudrait que Mozilla remplace tout seul les tabulations pour le bon nombre d'espaces pour ne plus avoir ce problème. En attendant, n'utilisez plus la touche tabulation ! Pour écrire dy Python correct, c'est indispensable !
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
À (at) Wed, 20 Apr 2005 09:41:47 +0400,
regis <r.floret.nospams@laposte.net> écrivait (wrote):
Certes, il manque un s mais aucun souci d'indentation :) (mozilla news)
Vous avez bien un problème d'indentation même si vous ne le voyez pas : vous
avez utilisé le caractère tabulation dans votre message. Or ce caractère n'est
pas toujours interprété avec la même taille (en nombre d'espaces équivalents)
suivant les plateformes.
Donc ce n'est pas parce que votre message se relit correctement dans votre
lecteur de news (et le mien au passage) que c'est le cas pour tout le monde.
Il faudrait que Mozilla remplace tout seul les tabulations pour le bon nombre
d'espaces pour ne plus avoir ce problème. En attendant, n'utilisez plus la
touche tabulation ! Pour écrire dy Python correct, c'est indispensable !
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
À (at) Wed, 20 Apr 2005 09:41:47 +0400, regis écrivait (wrote):
Certes, il manque un s mais aucun souci d'indentation :) (mozilla news)
Vous avez bien un problème d'indentation même si vous ne le voyez pas : vous avez utilisé le caractère tabulation dans votre message. Or ce caractère n'est pas toujours interprété avec la même taille (en nombre d'espaces équivalents) suivant les plateformes.
Donc ce n'est pas parce que votre message se relit correctement dans votre lecteur de news (et le mien au passage) que c'est le cas pour tout le monde.
Il faudrait que Mozilla remplace tout seul les tabulations pour le bon nombre d'espaces pour ne plus avoir ce problème. En attendant, n'utilisez plus la touche tabulation ! Pour écrire dy Python correct, c'est indispensable !
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>