Maison > développement back-end > Tutoriel Python > Comment empêcher les lignes vides dans la sortie Python CSV vers Excel ?

Comment empêcher les lignes vides dans la sortie Python CSV vers Excel ?

Linda Hamilton
Libérer: 2024-12-17 02:57:25
original
308 Les gens l'ont consulté

How to Prevent Blank Lines in Python CSV Output to Excel?

Sortie CSV Python : évitez les lignes vides entre les lignes

Lors de l'écriture d'un fichier CSV en Python, rencontrer des lignes vides séparant chaque ligne dans Microsoft Excel peut être frustrant. Ce problème survient en raison de la manière dont csv.writer gère les fins de ligne.

Dans Python 3, l'ouverture du fichier de sortie en mode texte (« w ») amènera Windows à traduire chaque nouvelle ligne ('n') en un retour chariot et nouvelle ligne (« rn »). Pour éviter cela, le fichier doit être ouvert en mode texte non traduit avec le paramètre newline='' (chaîne vide) :

with open('thefile_subset11.csv', 'w', newline='') as outfile:
    writer = csv.writer(outfile)
Copier après la connexion

Alternativement, en utilisant la méthode open() du module Path permet également de spécifier le paramètre newline :

from pathlib import Path
with Path('thefile_subset11.csv').open('w', newline='') as outfile:
    writer = csv.writer(outfile)
Copier après la connexion

En Python 2, la solution est d'ouvrir le fichier de sortie dans mode binaire ('wb') au lieu du mode texte ('w') :

with open('thefile_subset11.csv', 'wb') as outfile:
    writer = csv.writer(outfile)
Copier après la connexion

Pour les opérations en mémoire utilisant StringIO, la chaîne résultante contiendra la ligne spécifique à Windows terminateur (« rn »). Lorsque vous écrivez cette chaîne dans un fichier, n'oubliez pas d'utiliser newline='':

from io import StringIO
s = StringIO()
writer = csv.writer(s)
writer.writerow([1, 2, 3])
with open('thefile_subset11.csv', 'w', newline='') as f:
    f.write(s.getvalue())
Copier après la connexion

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