Itération dans un fichier
Bonjour,
Je dispose d'un fichier contenant du texte comme celui la par exemple:
Citation:
RRZRRGZZZZZRGZGZZGZGBGGGRBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGZ
RRZRRGZZZZZRGZGZZGZGBGGGBBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGB
RRZRRGZZZZZRGZGZZGZGZGGGRBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGB
GRBBGGBGBGGGBBGBBGBGGBB1
GRBBGGBGBGGGBBGBBGBGGBB2
GRBBGGBGBGGGBBGBBGBGGBB3
Ce que je fais (ou du moins j'essaie) c'est récupérer les différentes lignes dans 3 chaines de caractères différentes. C'est à dire, mettre la 1ere ligne dans la chaine 1, puis la seconde ligne dans la chaine 2, et enfin la 3 éme ligne dans la chaine 3, ensuite on recommence jusqu'à la fin du fichier.
En couleur pour une meilleure visualisation:
Citation:
RRZRRGZZZZZRGZGZZGZGBGGGRBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGZ
RRZRRGZZZZZRGZGZZGZGBGGGBBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGB
RRZRRGZZZZZRGZGZZGZGZGGGRBBBGBGRGRGRGBGBGBGBGGRBGBBZBBGRBBGB
GRBBGGBGBGGGBBGBBGBGGBB1
GRBBGGBGBGGGBBGBBGBGGBB2
GRBBGGBGBGGGBBGBBGBGGBB3
chaine1
chaine2
chaine3
Voici le code que j'ai généré (pour cet exemple précis):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
f = open("test","r")
chaine1 = ""
chaine2 = ""
chaine3 = ""
for i,el in enumerate(f.readlines()):
if i == 0:
chaine1+= el
if i == 1:
chaine2+= el
if i == 2:
chaine3+= el
if i == 3:
chaine1+= el
if i == 4:
chaine2+= el
if i == 5:
chaine3+= el |
J'ai pensé que la meilleure solution était de se pencher sur les indices du fichier lors du parcours, mon problème est le suivant, je n'arrive pas à incrémenter automatiquement mes indices pour lire une ligne sur 3, car dans le cas ou mon fichier fait 600 lignes je me vois mal définir à la main tous les indices. Je pense que ça tient en 1 ligne de code mais l'inspiration me manque :roll:
Merci à vous