520 votes

Comment lire un fichier sans sauts de ligne ?

En Python, appeler par exemple temp = open(filename,'r').readlines() donne une liste dans laquelle chaque élément est une ligne du fichier. Cependant, ces chaînes de caractères ont un caractère de saut de ligne à la fin, que je ne veux pas.

Comment puis-je obtenir les données sans les sauts de ligne ?

4 votes

Utilisez strip : [l.strip('\n\r') for l in temp]. Ou même rstrip. Et comme il y a une itération ici, cela peut être in open au lieu de in temp.

17 votes

Ce serait bien si en Python 3 il y avait une valeur pour définir l'argument newline de la fonction open sur le retrait des nouvelles lignes en fin de fichier.

0 votes

12voto

David Gilbertson Points 517

Mon préféré -- si on ne compte pas from pathlib import Path :)

lines = Path(filename).read_text().splitlines()

Cela ferme automatiquement le fichier, pas besoin de with open()...

Ajouté en Python 3.5.

https://docs.python.org/3/library/pathlib.html#pathlib.Path.read_text

2voto

Nitesh Soni Points 53

Essayer ceci :

u=open("url.txt","r")  
url=u.read().replace('\n','')  
print(url)

2voto

Martín Bel Points 1728

Vous pouvez lire le fichier facilement en tant que liste en utilisant une compréhension de liste

with open("foo.txt", 'r') as f:
    lst = [row.rstrip('\n') for row in f]

1voto

YScharf Points 301

Pour vous débarrasser des caractères de fin de ligne (/n) et des valeurs d'une liste vide (''), essayez ceci :

f = open(path_sample, "r")
lines = [line.rstrip('\n') for line in f.readlines() if line.strip() != '']
f.close()

1voto

user14534957 Points 13

Utilisez pathlib.Path.read_text(), cela ouvre le fichier en mode texte, le lit et ferme le fichier.

from pathlib import Path

temp = Path(filename).read_text()

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X