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 fichier dat - Guide
2 réponses
indigofox
Messages postés
41
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
24 mai 2009
6
19 avril 2007 à 15:52
19 avril 2007 à 15:52
utilise ceci:
import glob
list_files = glob.glob('*.dat')
import glob
list_files = glob.glob('*.dat')
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()