Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menulis Kamus Python ke Fail CSV dengan Kekunci dan Nilai dalam Baris Berasingan?

Bagaimana untuk Menulis Kamus Python ke Fail CSV dengan Kekunci dan Nilai dalam Baris Berasingan?

Barbara Streisand
Barbara Streisandasal
2024-10-17 18:48:31210semak imbas

How to Write a Python Dictionary to a CSV File with Keys and Values in Separate Rows?

Menulis Kamus Python ke Fail CSV

Jika anda perlu menulis kamus Python ke fail csv, di mana kunci kamus muncul dalam baris pertama dan nilai utama dalam kedua, gunakan pendekatan berikut:

Langkah 1: Gunakan DictWriter.writerow()

Kod yang anda petik menggunakan DictWriter.writerows () yang mengharapkan senarai kamus, bukan satu kamus. Untuk menulis satu baris, gunakan DictWriter.writerow():

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()
    w.writerow(my_dict)

Langkah 2: Sertakan DictWriter.writeheader()

Jika anda inginkan baris pengepala untuk fail CSV anda, hubungi DictWriter.writeheader() sebelum menulis kamus:

    w.writeheader()
    w.writerow(my_dict)

Langkah 3: Gunakan Pernyataan "dengan"

Pernyataan "dengan" mengendalikan pembukaan dan penutupan fail dengan elegan, walaupun semasa pengecualian:

with open("mycsvfile.csv", "w", newline="") as f:
    # ...

Langkah 4: Lumpuhkan Pengurusan Baris Baharu

Penulis CSV menguruskan pemisah baris secara dalaman, jadi lumpuhkan lalai tingkah laku dalam open() menggunakan newline="":

with open("mycsvfile.csv", "w", newline="") as f:
    # ...

Kod yang disemak ini menjana fail CSV dengan kunci kamus dan nilai dipisahkan dengan betul:

test,testing
1,2

Atas ialah kandungan terperinci Bagaimana untuk Menulis Kamus Python ke Fail CSV dengan Kekunci dan Nilai dalam Baris Berasingan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn