[PYTHON] Script plusieurs fichiers en entré
Benj
-
Benj -
Benj -
Bonjour, j'ai fait un très petit programme, il permet de traiter des fichiers, du moins un fichier. Je voudrais qu'il travail sur tous les fichiers du dossier portant l'extension .DAT, et qu'il ecrive la sortie en reprenant le nom de fichier en entré et en rajoutant l'extension .sql par exemple :) code source :
Je suis a votre disposition pour des questions ou remarques ou applaudissements,
Cordialement benj :)
#!/user/bin/python #ouverture des fichiers fichier = open("benj.txt","r") #fichier d'entrée fichierout = open("pythoncarox.txt","w") #fichier de sortie lignedeformat=fichier.readline() #recupération de la premiere ligne lignedeformat2=lignedeformat.split(',') #transformation en list, chaque champ étant séparé par une virgule i=0 #compteur debutchamp=1 #dans la premiere ligne, le numero de debut de champ est indiqué au 2eme caractere finchamp=2 #le numero de fin au 3eme caractere listindex = [] #liste pour stocker les debuts et fin de chaques champs while i < 46: #il y a 46 champs finindex=int(lignedeformat2[finchamp]) debutindex=int(lignedeformat2[debutchamp])-1 listindex.append(debutindex) listindex.append(finindex) debutchamp=debutchamp+4 #le numero est indiqué 4 champs plus loin finchamp=finchamp+4 i=i+1 for ligne in fichier: #pour les lignes restantes i=0 u=0 #u permet selectioner dans la liste la paire d'indice definissant le debut et la fin while i < 46:#pour les 46 champs des lignes fichierout.write(",")#on precede chaque champs d'une virgule fichierout.write(str(ligne[listindex[u]:listindex[u+1]]))#on ecrit la valeur d'un champ u=u+2 i=i+1 fichierout.write("\n") #saute de ligne a chaque ligne traité fichier.close() fichierout.close()
Je suis a votre disposition pour des questions ou remarques ou applaudissements,
Cordialement benj :)
A voir également:
- Lire plusieurs fichiers python
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Lire fichier epub - Guide
- Lire fichier bin - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Lire fichiers rar - Guide
2 réponses
Exact, je te remerci, ca marche :)
Script bash 20min
Python 1sec
code au cas ou ca peut servir :
Script bash 20min
Python 1sec
code au cas ou ca peut servir :
#!/user/bin/python #-*- coding : utf-8 -*- import os, sys, glob for filename in glob.glob('*.DAT'): #ouverture des fichiers fichier = open(filename,"r") #fichier d'entree resultfilename = os.path.splitext(filename)[0]+'.sql' fichierout = open(resultfilename,"w") #fichier de sortie lignedeformat=fichier.readline() #recuperation de la premiere ligne lignedeformat2=lignedeformat.split(',') #transformation en list, chaque champ etant separe par une virgule i=0 #compteur debutchamp=1 #dans la premiere ligne, le numero de debut de champ est indique au 2eme caractere finchamp=2 #le numero de fin au 3eme caractere listindex = [] #liste pour stocker les debuts et fin de chaques champs while i < 46: #il y a 46 champs finindex=int(lignedeformat2[finchamp]) debutindex=int(lignedeformat2[debutchamp])-1 listindex.append(debutindex) listindex.append(finindex) debutchamp=debutchamp+4 #le numero est indique 4 champs plus loin finchamp=finchamp+4 i=i+1 for ligne in fichier: #pour les lignes restantes i=0 u=0 #u permet selectioner dans la liste la paire d'indice definissant le debut et la fin while i < 46:#pour les 46 champs des lignes fichierout.write(",")#on precede chaque champs d'une virgule fichierout.write(str(ligne[listindex[u]:listindex[u+1]]))#on ecrit la valeur d'un champ u=u+2 i=i+1 fichierout.write("\n") #saute de ligne a chaque ligne traite fichier.close() fichierout.close()