Comment ignorer les en-têtes lors du traitement de fichiers CSV avec Python ?

Linda Hamilton
Libérer: 2024-10-31 06:42:01
original
765 Les gens l'ont consulté

How to Skip Headers When Processing CSV Files with Python?

Saut des en-têtes lors du traitement de fichiers CSV avec Python

Problème :

Lors de la tentative de traitement un fichier CSV utilisant Python, l'utilisateur rencontre un problème où la première ligne, contenant les en-têtes, est modifiée par les fonctions de traitement. Le but est d'éditer le fichier CSV à partir de la deuxième ligne, en excluant les en-têtes.

Solution :

Pour résoudre ce problème, l'objet csv.reader fourni par le module Python CSV peut être utilisé pour ignorer les en-têtes pendant le traitement. Les étapes suivantes décrivent la solution :

  1. Ouvrez les fichiers CSV en tant que gestionnaires de contexte :

    <code class="python">with open("tmob_notcleaned.csv", "rb") as in_file, open("tmob_cleaned.csv", "wb") as out_file:</code>
    Copier après la connexion

    L'utilisation de with en tant que gestionnaire de contexte gère automatiquement l'ouverture et la fermeture des fichiers CSV, assurant une bonne gestion des ressources.

  2. Créer les objets Reader et Writer :

    <code class="python">reader = csv.reader(in_file)
    writer = csv.writer(out_file)</code>
    Copier après la connexion

    Le csv .reader crée un objet itérable pour parcourir les lignes CSV, tandis que csv.writer permet d'écrire des lignes dans le fichier CSV de sortie.

  3. Ignorer les en-têtes :

    <code class="python">next(reader, None)</code>
    Copier après la connexion

    Cette ligne fait avancer l'itérateur jusqu'à la première ligne sans l'attribuer à une variable. En fournissant Aucun comme deuxième argument, la ligne ignorée est ignorée.

  4. Traiter et écrire les lignes restantes :

    <code class="python">for row in reader:
        # Perform processing
        writer.writerow(row)</code>
    Copier après la connexion

    Parcourir les lignes restantes, à l'exclusion des en-têtes, effectuent le traitement nécessaire et écrivent les lignes modifiées dans le fichier de sortie.

  5. Écrivez éventuellement les en-têtes (si vous le souhaitez) :

    <code class="python">headers = next(reader, None)
    if headers:
        writer.writerow(headers)</code>
    Copier après la connexion

    Ce bloc de code permet d'écrire les en-têtes dans le fichier de sortie non traités en passant le résultat de next() àwriter.writerow().

Par en suivant ces étapes, le code Python ignorera les en-têtes lors du traitement du fichier CSV, garantissant ainsi que la première ligne reste inchangée.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!