Le split('\n') n'a pas de sens: readline() va lire juste une ligne (avec caractères de fin de ligne), si tu split au lieu d'avoir une chaîne tu vas avoir une liste de 2 éléments (la partie avant la fin de ligne, et une chaîne vide pour la partie après la fin de ligne).
Si tu veux simplement retirer le caractère de fin de ligne, utilise juste .rstrip() sans donner de paramètre ça va enlever tous les "whitespace" finaux (espace, tabulation, fin de ligne), et ce n'est même pas utile: float() ignore les blancs ce bricolage n'a tout simplement pas lieu d'être
Code :
>>> float('0.005\n') 0.005
|
Mais fondamentalement le code utilise mal Python: si tu veux récupérer les 100 premières lignes de chaque fichier, une meilleure manière de le faire serait:
Code :
from itertools import islice with open("acqui5 (good)(T)(27sec).txt", 'rb') as courbet: t = list(islice(courbet, 100)) with open("acqui5 (good)(V)(27sec).txt", 'rb') as courbev: v = list(islice(courbev, 100))
|
Si les deux fichiers contiennent des floats, tu peux faire ta conversion pendant la lecture: au lieu de list, suffit d'utiliser map:
Code :
from itertools import islice with open("acqui5 (good)(T)(27sec).txt", 'rb') as courbet: t = map(float, islice(courbet, 100)) with open("acqui5 (good)(V)(27sec).txt", 'rb') as courbev: v = map(float, islice(courbev, 100))
|
Message édité par masklinn le 26-06-2015 à 12:36:57
---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?