Cara Menggunakan Dictreader Python Csv

DictReader() digunakan untuk membaca file csv dalam format objek dict. Mari kita bahas cara menggunakan metode DictReader() dengan python.

Sebelum kita memulai pembahasan utama artikel ini, mari kita pahami dulu apa itu file csv.

Apa itu File CSV (Comma Seperated Values)?:

CSV adalah file di mana data dalam bentuk dipisahkan koma atau pilihan user pemisah lainnya dipisahkan. File-file ini memiliki ekstensi csv. File csv ini sebagian besar digunakan dalam analisis data. Terlepas dari analisis data, file csv juga digunakan dalam aplikasi e-commerce karena sangat mudah ditangani dalam semua bahasa pemrograman yang berbeda.

1. DictReader () metode untuk membaca nama kolom tertentu:

File CSV: Di bawah ini adalah file test.csv. File csv ini akan kita baca dari DictReader(). Dalam program ini, kita tidak akan membaca seluruh data file csv melainkan hanya kolom Bulan seperti yang ditunjukkan di bawah ini:

"Month", "1958", "1959", "1960"

"JAN",  340,  360,  417

"FEB",  318,  342,  391

"MAR",  362,  406,  419

"APR",  348,  396,  461

"MAY",  363,  420,  472

"JUN",  435,  472,  535

"JUL",  491,  548,  622

"AUG",  505,  559,  606

"SEP",  404,  463,  508

"OCT",  359,  407,  461

"NOV",  310,  362,  390

"DEC",  337,  405,  432

kode python:

 
{'Month': 'FEB', ' "1958"': '  318', ' "1959"': '  342', ' "1960"': '  391'}

{'Month': 'MAR', ' "1958"': '  362', ' "1959"': '  406', ' "1960"': '  419'}

{'Month': 'APR', ' "1958"': '  348', ' "1959"': '  396', ' "1960"': '  461'}

{'Month': 'MAY', ' "1958"': '  363', ' "1959"': '  420', ' "1960"': '  472'}

{'Month': 'JUN', ' "1958"': '  435', ' "1959"': '  472', ' "1960"': '  535'}

{'Month': 'JUL', ' "1958"': '  491', ' "1959"': '  548', ' "1960"': '  622'}

{'Month': 'AUG', ' "1958"': '  505', ' "1959"': '  559', ' "1960"': '  606'}

{'Month': 'SEP', ' "1958"': '  404', ' "1959"': '  463', ' "1960"': '  508'}

{'Month': 'OCT', ' "1958"': '  359', ' "1959"': '  407', ' "1960"': '  461'}

{'Month': 'NOV', ' "1958"': '  310', ' "1959"': '  362', ' "1960"': '  390'}

{'Month': 'DEC', ' "1958"': '  337', ' "1959"': '  405', ' "1960"': '  432'}

Baris 1: Kami mengimpor modul csv.

Baris 2 hingga 5: Kami membuka file test.csv sebagai f, dan kemudian kami membuat objek DictReader. Objek akan terus melakukan iterasi hingga data. csv.DictReader() akan mengembalikan setiap baris tipe OrederedDict, jadi kami mengonversi setiap baris tipe OrderedDict menjadi dict menggunakan metode tipe cast. Pembaca objek kemudian menampilkan semua data dalam format kamus, seperti yang ditunjukkan pada output di atas.

Tetapi, jika Anda menggunakan python terbaru, maka konversi tipe dict tidak diperlukan, karena kami menggunakan tipe cast pada baris nomor 5 dari contoh program di atas.

3. Metode DictWriter ():

Metode DictWriter adalah bagian dari metode DictReader yang membantu menulis data format kamus ke file csv. Jadi dalam program ini, kita akan melihat bagaimana kita bisa menulis data kamus ke csv.

 
    writer = csv.DictWriter(outfile, ["FirstName", "LastName"])

    writer.writeheader()

    new_row = {"FirstName": "Linux", "LastName": "Hint"}

    writer.writerow(new_row)

Keluaran:

FirstName,LastName

Linux,Hint

Baris 3 hingga 7: Kami membuka file output.csv dalam cara penulisan (‘w’). Kemudian kami meneruskan header csv dalam bentuk daftar ke DictWriter sambil membuat objek itu sendiri. Kita harus memberi tahu nama kolom csv ke objek sebelum menulis ke csv; jika tidak, itu akan menghasilkan error karena objek tidak akan dapat memahami nama kunci kamus. Pada baris 6, kami membuat satu objek dict dan meneruskannya ke objek writerow untuk ditulis ke dalam file csv.

Outputnya menunjukkan bahwa data kita berhasil ditulis pada file csv.

4. Metode DictWriter() untuk menulis daftar data kamus ke csv:

Dalam program ini, kita akan melihat bagaimana kita dapat menulis daftar data kamus ke csv. Pada contoh sebelumnya, kami hanya menulis data kamus tunggal ke csv untuk memahami konsepnya. Tapi kami menulis csv dengan data besar dalam kehidupan sehari-hari. Jadi kita akan melihat skenario itu dalam contoh ini.