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

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

Patricia Arquette
Libérer: 2024-12-16 20:32:17
original
934 Les gens l'ont consulté

How to Efficiently Remove Newline Characters When Reading Files in Python?

Suppression des caractères de nouvelle ligne des lectures de fichiers en Python

Lors de l'utilisation de la méthode readlines() pour lire un fichier en Python, la liste résultante de Les chaînes contiennent des caractères de nouvelle ligne à la fin de chaque élément. Pour obtenir les données sans ces nouvelles lignes, plusieurs méthodes sont disponibles :

str.splitlines()

Cette méthode divise l'intégralité du contenu du fichier en une liste de chaînes, en préservant l'ordre original des lignes sans les caractères de nouvelle ligne.

temp = file.read().splitlines()
Copier après la connexion

Manuel Supprimer

Supprimer individuellement les caractères de nouvelle ligne de chaque chaîne de la liste est une autre option.

temp = [line[:-1] for line in file]
Copier après la connexion

Remarque : Cette approche suppose que le fichier a une nouvelle ligne personnage à la fin; sinon, la dernière ligne sera tronquée.

Application de la nouvelle ligne à la fin du fichier

Si le fichier ne peut pas avoir de nouvelle ligne de fin, une nouvelle ligne peut être ajoutée manuellement avant lecture du fichier.

with open(the_file, 'r+') as f:
    f.seek(-1, 2)  # Navigate to the file end
    if f.read(1) != '\n':
        f.write('\n')        # Insert newline if missing
        f.flush()
        f.seek(0)
    lines = [line[:-1] for line in f]
Copier après la connexion

Autre décapage alternatif Méthodes

  • [line.rstrip('n') pour la ligne du fichier]
  • [line[:-(line[-1] == 'n') ou len(line) 1] pour la ligne dans le fichier]

N'oubliez pas que la méthode readlines() parcourt le fichier ligne par ligne, en conservant le nouvelles lignes. Pour garantir une copie exacte du fichier, utilisez writelines() sans ajouter de nouvelles lignes.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal