La méthode open(filename,'r').readlines() de Python fournit une liste de lignes d'un fichier, mais chaque élément inclut un caractère de nouvelle ligne. Pour récupérer les données sans ces caractères, plusieurs approches sont disponibles.
Une méthode consiste à lire l'intégralité du fichier et à diviser les lignes à l'aide de str.splitlines :
temp = file.read().splitlines()
Vous pouvez également supprimer la nouvelle ligne de chaque ligne. manuellement :
temp = [line[:-1] for line in file]
Remarque : Cette approche suppose que le fichier se termine par une nouvelle ligne ; sinon, la dernière ligne perdra un caractère.
Pour éviter ce problème, vous pouvez ajouter une nouvelle ligne à la fin du fichier si elle est manquante :
with open(the_file, 'r+') as f: f.seek(-1, 2) if f.read(1) != '\n': f.write('\n') f.flush() f.seek(0) lines = [line[:-1] for line in f]
Ou, de manière plus concise, supprimez la nouvelle ligne :
[line.rstrip('\n') for line in file]
La méthode readlines émule efficacement le code suivant :
def readlines(self): lines = [] for line in iter(self.readline, ''): lines.append(line) return lines
Par conséquent, readlines() conserve également les caractères de nouvelle ligne lus par readline().
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!