Maison  >  Article  >  développement back-end  >  Comment écrire des dictionnaires Python dans des fichiers CSV : ligne d'en-tête avec clés, valeurs dans la deuxième ligne ?

Comment écrire des dictionnaires Python dans des fichiers CSV : ligne d'en-tête avec clés, valeurs dans la deuxième ligne ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-17 18:57:02734parcourir

How to Write Python Dictionaries to CSV Files: Header Row with Keys, Values in Second Row?

Writing Python Dictionaries to CSV Files

Question:
How can I write a Python dictionary to a CSV file, with the keys as the header row and the values in the second row?

Answer:
To achieve this, you must utilize the csv module and the DictWriter class. However, the code snippet provided in your question only writes the keys to the first line due to an incorrect method usage.

Incorrect Usage:

<code class="python">w.writerows(my_dict)</code>

Correct Usage:

To write a single row of data to a CSV file, use the writerow() method instead.

<code class="python">w.writerow(my_dict)</code>

Example:

<code class="python">import csv

my_dict = {"test": 1, "testing": 2}

with open("mycsvfile.csv", "w", newline="") as f:
    w = csv.DictWriter(f, my_dict.keys())
    w.writeheader()  # Write header (keys)
    w.writerow(my_dict)  # Write values</code>

Result:

<code class="csv">test,testing
1,2</code>

Additional Notes:

  • The DictWriter expects a list of dictionaries as input, so in this case, we wrap the dictionary in a single-item list.
  • The with statement ensures proper file handling, including automatic file closing.
  • Disable newline management in open() by setting newline="", as the CSV writer handles newlines.

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