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
---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody