Maison >développement back-end >Tutoriel Python >Pourquoi y a-t-il des lignes vides dans mon fichier CSV écrit en Python lorsqu'il est ouvert dans Excel ?

Pourquoi y a-t-il des lignes vides dans mon fichier CSV écrit en Python lorsqu'il est ouvert dans Excel ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-13 20:36:15600parcourir

Why Are There Blank Lines in My Python-Written CSV File When Opened in Excel?

Le fichier CSV écrit avec Python contient des lignes vides entre les lignes

Lors de l'écriture d'un fichier CSV en Python, vous pouvez rencontrer des lignes vides entre chaque ligne lors de son ouverture dans Microsoft Excel. Ce problème survient car le module csv.writer contrôle les fins de ligne, en écrivant « rn » dans le fichier.

Solutions pour Python 3 :

Pour éliminer les lignes vides, réécrivez le code pour ouvrir le fichier de sortie avec newline=''. Ce paramètre empêche toute traduction de nouvelle ligne, garantissant que seul "n" est écrit, ce qui donne une seule ligne par ligne.

with open('/pythonwork/thefile_subset11.csv', 'w', newline='') as outfile:
    writer = csv.writer(outfile)

Vous pouvez également utiliser la méthode open du module Path avec newline=''.

from pathlib import Path
with Path('/pythonwork/thefile_subset11.csv').open('w', newline='') as outfile:
    writer = csv.writer(outfile)

Solutions pour Python 2 :

Pour Python 2, utilisez le mode binaire en ouvrant le fichier de sortie avec 'wb' au lieu de 'w'.

with open('/pythonwork/thefile_subset11.csv', 'wb') as outfile:
    writer = csv.writer(outfile)

Notes supplémentaires :

  • Si vous utilisez StringIO pour construire un résultat en mémoire, n'oubliez pas d'utiliser newline='' lors de l'écriture de la chaîne dans un fichier.
  • Pour la prise en charge d'Unicode dans Python 2, pensez à utiliser le Exemples UnicodeReader et UnicodeWriter à la fin de la documentation csv.
  • Vous pouvez également explorer le module unicodecsv tiers pour la prise en charge d'Unicode dans Python 2.

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