Maison >développement back-end >Tutoriel Python >Comment lire et écrire des fichiers CSV dans Python

Comment lire et écrire des fichiers CSV dans Python

Joseph Gordon-Levitt
Joseph Gordon-Levittoriginal
2025-03-04 09:50:10375parcourir

Le format CSV est le format d'importation et d'exportation le plus utilisé pour les bases de données et les feuilles de calcul. Ce tutoriel donnera une introduction au module CSV dans Python. Vous découvrirez toutes les fonctions et classes qu'elle met à disposition pour que vous puissiez lire et écrire des données dans les fichiers CSV. J'ai également inclus quelques exemples de travail pour vous montrer comment lire et écrire des données dans un fichier CSV réel dans Python.

Qu'est-ce qu'un fichier CSV?

Le terme CSV représente des valeurs séparées par la virgule. Un fichier de format CSV permet d'enregistrer les données dans une structure tabulaire avec une extension .csv . Les fichiers CSV ont été largement utilisés dans les applications de commerce électronique car elles sont considérées comme très faciles à traiter. Certains des domaines où ils ont été utilisés comprennent:

  • Importation et exportation de données clients
  • Importation et exportation de produits
  • Exportation des commandes
  • Exportation de rapports d'analyse de commerce électronique

Les fonctions et les fonctions de l'écrivain

Le module CSV a des fonctions et des fonctions d'écrivain

Le moderne CSV a des fonctions et des fonctions d'écrivain

Le module CSV a des fonctions et des fonctions d'écrivain
    Le module CSV a des fonctions et des fonctions d'écrivain
  • travailler avec les fichiers CSV. Commençons par apprendre à utiliser les fonctions écrivain () .
  • csv.reader ()
  • La fonction prend les paramètres suivants:
  • __ Next __ () La méthode est appelée.
    import csv<br><br>with open('people.csv', newline='') as File:  <br>    reader = csv.reader(File)<br>    for row in reader:<br>        print(row)<br>

    list_dialects () Fonction. csv.reader () fonction.

avez-vous remarqué l'Open () lors de l'ouverture d'un CSV.Writer Cette fonction renvoie un rédacteur à un objet écrivain qui a un budget des méthodes d'assistance pour vous aider à vous réjouir de votre fonction dans votre fonction dans votre fonction de vous rédiger un rédacteur déposer. Cette fonction est similaire à la méthode écrite () . Encore une fois, vous devez l'ouvrir en utilisant le paramètre Dictreader

et dictreader et dictreader

le paramètre de champs , les valeurs de la première ligne seront utilisées comme clés. Que se passe-t-il si ce n'est pas le cas? Il y a deux possibilités ici.

Tout d'abord, une ligne que vous lisez a plus de champs que ceux du paramètre Restkey

. Deuxièmement, une ligne a moins de champs que ceux du paramètre RESTval .

DictWriter

Classe crée un objet qui mappe les dictionnaires sur les lignes que vous souhaitez sortir ou écrire sur votre fichier. Tout comme FieldNames comme deuxième paramètre. L'ordre de différents champs à l'intérieur de la méthode de Writerow () . Contrairement au paramètre Field Names

dans les noms de champ effacera toute ambiguïté autour de l'utilisation de ces touches.

Les dictionnaires que vous souhaitez écrire dans un fichier CSV peuvent avoir une clé manquante qui est présente dans le paramètre RESTval . Si un dictionnaire a une clé supplémentaire qui n'est pas dans la clé d'extrasaction pour spécifier quoi faire. Le comportement par défaut consiste à élever un lecteur ou Delimiter : une chaîne à un caractères utilisé pour séparer les champs. Il est par défaut quottechar : une chaîne à un caractères utilisé pour citer les champs contenant des caractères spéciaux. Cela inclut le caractère Qutechar . Il est par défaut doublequote : contrôle comment les instances de quottechar apparaissant à l'intérieur d'un champ doivent être citées. Il peut être faux . Gardez à l'esprit que vous devrez définir une valeur de EscapEchar si doublequote est défini sur EscapEchar : une chaîne utilisée par l'écrivain pour échapper à la Delimiter Si Citation est définie par la file Le 'rn' . true , tout espace blanc suivant immédiatement le Delimiter

  • est ignoré. Citant
  • : Contrôles lorsque les citations doivent être générées lors de la lecture ou de l'écriture pour un CSV. valeurs possibles. Ce sont:
  • écrivain pour citer tous les champs.

    écrivain
      pour citer uniquement les champs qui contiennent un caractère spécial comme le délimiteur ou le
    • quote_nonnumeric
    • : Cela dit le
    • quote_none : ceci CSV.Reader Dans le code ci-dessus, nous importons le module CSV, puis ouvrons notre fichier CSV en tant que fonction CSV.Reader () pour extraire les données dans l'objet. Nous allons ensuite parcourir la classe DiCtreader nous permet de lire un fichier CSV en mappant les données à un dictionnaire au lieu de renvoyer une liste comme dans le cas de la classe DiCtreader .
      import csv<br><br>with open('people.csv', newline='') as File:  <br>    reader = csv.reader(File)<br>    for row in reader:<br>        print(row)<br>

      Comme d'habitude, nous importons d'abord le module CSV. Nous définissons ensuite l'objet Reader et utilisons la classe dictreader est meilleure car elle étend nos données en tant que dictionnaire, qui peut être plus facile à travailler dans certaines situations.

      Nous n'avons pas passé de valeur pour le dictreader
      import csv<br> <br>with open('state-data.csv', newline='') as state_file:<br>    reader = csv.reader(state_file)<br>    for row in reader:<br>        print(row)<br>
      utilisé les champs de la première rangée comme touches de dictionnaire. Passons une liste comme valeur pour les noms de champ

      pour vous montrer comment Restkey est-ce que nous avons plus d'éléments dans chaque ligne que les champs de FieldNames

      , la première ligne n'est plus utilisée pour créer les touches et est sortie en tant que dictionnaire. Notez également que toutes les valeurs supplémentaires de chaque ligne sont maintenant stockées dans une liste et affectées à la clé

      Données supplémentaires dans le dictionnaire.

      Écriture dans un fichier CSV

      Voyons maintenant comment rédiger des données dans un fichier CSV en utilisant le CSV.Writer

      Le code ci-dessous écrit les données définies sur la méthode Writerow () car il y a une seule ligne dont nous voulons écrire les données avec les données que nous avons écrites. il.

      Écrivant dans un fichier CSV à l'aide de dictwriter Comment lire et écrire des fichiers CSV dans Python

      Écrivons les données suivantes dans notre fichier CSV. Il contient des informations sur trois états américains différents dans une liste, les éléments individuels étant un dictionnaire.

      Le code est comme indiqué ci-dessous.
      import csv<br><br>with open('people.csv', newline='') as File:  <br>    reader = csv.reader(File)<br>    for row in reader:<br>        print(row)<br>

      Nous définissons d'abord les noms de champ comme une liste et les stockons dans l'écrivain
      import csv<br> <br>with open('state-data.csv', newline='') as state_file:<br>    reader = csv.reader(state_file)<br>    for row in reader:<br>        print(row)<br>
      Objet Savoir ce que le titre de chaque colonne serait dans le fichier CSV. Les camionnettes ()

      est que les lignes que nous voulons écrire sont itératives. Chaque ligne individuelle elle-même devrait également être un itérable de chaînes ou de nombres si nous utilisons les noms de champ

      aux chaînes ou aux nombres pour la classe DictWriter

      propose une solution. Pour les clés manquantes, nous pouvons simplement fournir une valeur par défaut en utilisant le paramètre Extrasaction pour dire à ValueError par défaut. Voici comment écrire à toutes les lignes à la fois.

      Notre fichier CSV ressemblera à cela après toutes les opérations d'écriture:
      import csv<br><br>with open('state-data.csv', newline='') as state_file:<br>    reader = csv.DictReader(state_file)<br>    for row in reader:<br>        print(row)<br>

      Conclusion Comment lire et écrire des fichiers CSV dans Python

      Ce tutoral est ce qui est à la recherche de la majeure partie de la majeure partie de la maîtrise de la majeure partie de la majeure partie de la majeure partie de la majeure partie de la majeure partie de la maîtrise de la majeure partie de la plupart de la majeure partie de la maîtrise de la majeure partie de la majeure partie de la plupart de la maîtrise de la majeure partie de la majeure partie de la plupart des choses que la plupart du Tutor Capable de lire et d'écrire avec succès dans un fichier CSV en utilisant les différentes fonctions et classes fournies par Python. Les fichiers CSV ont été largement utilisés dans les applications logicielles car elles sont faciles à lire et à gérer et leur petite taille les rend relativement rapides à traiter et à transférer.

      Apprenez Python

      Apprenez Python avec notre guide de didacticiel Python complet, que vous soyez tout simplement démarré ou que vous soyez un coder assaisonné à la recherche de nouvelles compétences. Monty est un développeur complet qui aime également écrire des tutoriels et en savoir plus sur les nouvelles bibliothèques JavaScript.

    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