Maison >développement back-end >Tutoriel Python >Comment puis-je supprimer efficacement les caractères de nouvelle ligne lors de la lecture de fichiers en Python ?

Comment puis-je supprimer efficacement les caractères de nouvelle ligne lors de la lecture de fichiers en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-14 15:37:101050parcourir

How Can I Efficiently Remove Newline Characters When Reading Files in Python?

Élimination des nouvelles lignes lors de la lecture du contenu du fichier

En Python, readlines() renvoie une liste de chaînes où chaque élément représente une ligne d'un fichier . Cependant, ces chaînes incluent inévitablement des caractères de nouvelle ligne (n). Pour extraire des données sans ces nouvelles lignes, plusieurs approches sont disponibles.

Utilisation de splitlines()

Pour diviser les lignes sans conserver les nouvelles lignes, utilisez str.splitlines() :

temp = file.read().splitlines()

Suppression manuelle des nouvelles lignes

Alternativement, supprimez manuellement les nouvelles lignes à l'aide d'une compréhension de liste :

temp = [line[:-1] for line in file]

Gestion des nouvelles lignes de fin

Notez que cette méthode suppose que le fichier se termine par une nouvelle ligne ; sinon, la dernière ligne sera incomplète. Pour résoudre ce problème, ajoutez explicitement une nouvelle ligne :

with open(the_file, 'r+') as f:
    f.seek(-1, 2)
    if f.read(1) != '\n':
        # add missing newline if not already present
        f.write('\n')
        f.flush()
        f.seek(0)
    lines = [line[:-1] for line in f]

Omission des nouvelles lignes

Avec la méthode readlines(), la méthode writelines() n'ajoute pas de nouvelles lignes de fin . Par conséquent, f2.writelines(f.readlines()) réplique fidèlement f dans f2.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Apprendre PythonArticle suivant:Apprendre Python