Bonjour a tous
j'ai ecris un petit programme python qui est sensé lire 2 fichiers, et apres avoir fait un match, copier un fragment du 2 fichier dans le 1er.
Un exemple pour mieux voir:
Voici le fichier principal:
Je cherche le champs =650 \\$a
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 =LDR 01416n{dollar}{dollar} a2200289 4500 =035 \\$aDVD =245 10$a¡Qué bello es vivir! =260 \\$aMadrid$bSuevia Films =300 \\$aDisco óptico (DVD) =520 \\$aGeorge Bailey spends his entire life giving up his big dreams for the good of his town, Bedford Falls, as we see in flashback. But in the present, on Christmas Eve, he is broken and suicidal over the misplacing of an $8000 loan and the machinations of the evil millionaire, Mr. Potter. His guardian angel, Clarence, falls to Earth, literally, and shows him how his town, family, and friends would turn out if he had never been born. George meant so much to so many people; should he really throw it all away? =590 \\$aVersión en castellano e inglés con subtítulos en castellano =590 \\$aActores: James Stewart, Donna Reed, Lionel Barrymore =590 \\$aDuración aproximada : 128 mins =590 \\$aPelícula en blanco y negro =650 \\$aInglés =650 \\$aAprendizaje activo =597 \\$aInglés =597 \\$aEspañol =953 \\$a1120011734 =591 \\$a. -- Madrid : Suevia Films, [19??] . -- Disco óptico (DVD) =592 \\$a¡Qué bello es vivir! = It's a wonderful life . -- Madrid : Suevia Films, [19??] . -- Disco óptico (DVD) =651 \\$aEnglish =651 \\$aAction learning =093 \\$a01/07/2003 =080 \\$aV531 =598 \\$awonderfullife.jpg =999 \\$c1$d1
j'ai ces 2 lignes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 =650 \\$aInglés =650 \\$aAprendizaje activo
voici le second fichier:
Le but est de chercher la valeur du champs =650 $a dans le 2 fichier et de recuperer la valeur apres les : (c'est la traduction)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Ingles:English Inglés:English Apologética:Apologetics Aprendizaje:Learning Aprendizaje activo:Action learning Aprendizaje asistido por ordenador:Computeraided learning
Et lorsque je l'ai le placer de cette façon dans le fichier 1
Voici le code que j'ai fait, mais ça marche pas...Peu être quelqu'un peu m'aider:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 =650 \\$aInglés$iEnglish =650 \\$aAprendizaje activo$iAction learning
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 import re textos = "ficher1" traducciones = "fichier2.txt" salida = "salida.mrk" text = open(textos, 'r') trad = open(traducciones, 'r') salida = open(salida, 'r+') trad_lineas = trad.readlines() linea = text.readline() cont = 1 while linea: cont +=1 match = re.search(r'^=650', linea) if match: palabra = linea.split('$a')[-1].replace("\n","") for linea_traduccion in trad_lineas: if palabra in linea_traduccion: print "ole" salida.write("=650 \\$a%s$i%s\n" % (palabra, match.group(0))) break else: salida.write(linea) linea = text.readline()
Partager