Rumah >pembangunan bahagian belakang >Tutorial Python >Bekerja dengan fail CSV menggunakan python, dengan contoh
Fail CSV (nilai yang dipisahkan koma) adalah format fail teks yang membolehkan data disimpan dalam struktur tabular. Ini adalah format popular yang digunakan untuk mengeksport dan mengimport data dari pangkalan data dan spreadsheet.
Seperti namanya, setiap sekeping data dalam fail CSV dipisahkan oleh koma (,). Kadang -kadang istilah "CSV" boleh digunakan untuk menggambarkan format dengan jenis pemisah lain, seperti kolon (:), titik koma (;) dan tab (t). Untuk tujuan artikel ini, kami hanya akan berurusan dengan fail CSV yang menggunakan koma sebagai pembatas (dikenali sebagai RFC 4180).
Apabila dibuka, kandungan fail CSV kelihatan seperti ini:
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,FinanceSeperti yang dilihat di atas, pemisah koma, ,, digunakan untuk memisahkan setiap sekeping data tertentu dalam fail.
Baris pertama data mungkin secara pilihan berfungsi sebagai tajuk, mengenal pasti setiap lajur data di bawahnya. Fail CSV biasanya disimpan dengan sambungan fail .csv.
Modul CSV
Python menyediakan modul
csv untuk membaca, menulis dan melakukan bentuk pengendalian fail lain dalam format CSV. Perpustakaan yang dibina menyediakan fungsi dan kelas yang membuat kerja dengan fail CSV lancar.
modul
mari kita ambil contoh:
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,FinanceBerikut adalah output kod di atas:
<span>import csv </span> <span>with open('employees.csv', newline='') as file_obj: </span> reader_obj <span>= csv.reader(file_obj) </span> <span>for row in reader_obj: </span> <span>print(row) </span>Dari coretan kod pertama, fail Pekerja.CSV dibuka, selepas itu fungsi CSV.Reader () mengasingkannya dan mengembalikan objek pembaca. Mudah untuk gelung digunakan untuk melangkah ke atas objek pembaca, yang mengembalikan senarai data dari setiap baris dari fail porker.csv, bermula dari atas.
cara menulis ke fail CSV menggunakan python
Semua objek senarai yang digunakan dalam coretan kod di atas boleh dikelompokkan ke dalam senarai 2D dan diluluskan sebagai hujah kepada kaedah penulis () objek penulis untuk mencapai hasil yang sama.
Selepas pernyataan dengan dilaksanakan, fail CSV (Products.csv) dibuat dalam direktori kerja semasa yang mengandungi nilai-nilai yang dipisahkan koma ini.
Berikut adalah contoh:
<span>['Employee Id', 'First Name', 'Gender', 'Start Date', 'Last Login Time', 'Salary', 'Bonus %', 'Senior Management', 'Team'] </span><span>['1', 'Douglas', 'Male', '8/6/1993', '12:42 PM', '', '6.945', 'TRUE', 'Marketing'] </span><span>['2', 'Thomas', 'Male', '3/31/1996', '6:53 AM', '61933', '4.17', '', ''] </span><span>['3', 'Maria', 'Female', '4/23/1993', '11:17 AM', '', '11.858', 'FALSE', 'Finance'] </span><span>['4', 'Jerry', 'Male', '3/4/2005', '1:00 PM', '138705', '9.34', '', 'Finance'] </span><span>['5', 'Larry', 'Male', '1/24/1998', '4:47 PM', '101004', '1.389', 'TRUE', 'Client Services'] </span><span>... </span>Berikut adalah output kod di atas:
<span>import csv </span> <span>with open('products.csv', 'w', newline='') as file_obj: </span> writer_obj <span>= csv.writer(file_obj) </span> writer_obj<span>.writerow(['Product Name', 'Price', 'Quantity', 'SKU Number' ]) </span> writer_obj<span>.writerow(['Rice', 80, 35, 'RI59023']) </span> writer_obj<span>.writerow(['Curry', 2, 200, 'CY13890']) </span> writer_obj<span>.writerow(['Milk', 9.5, 315, 'MK10204']) </span>bagaimana untuk menukar CSV ke JSON menggunakan python
CSV menyediakan kelas CSV.Dictreader untuk membantu kami mencapai matlamat ini.
Kaedah kelas CSV.Dictreader membantu menukar fail CSV yang diberikan kepada kamus python sebelum menggunakan fungsi JSON.DUMP () modul untuk menukar kamus python yang terhasil kepada fail JSON. Kelas CSV.Dictreader () mengambil hujah nama lapangan pilihan. Di mana nama medan ditinggalkan, nilai dari baris pertama akan dipetakan ke seluruh data sebagai nama medan.mari kita lihat contoh:
Berikut adalah output kod di atas:
Product Name<span>,Price,Quantity,SKU Number </span>Rice<span>,80,35,RI59023 </span>Curry<span>,2,200,CY13890 </span>Milk<span>,9.5,315,MK10204 </span>
Untuk menukar fail CSV ke setara JSON, kami menggunakan langkah -langkah berikut:
Dalam bahagian ini, kita akan melihat cara menukar data dari fail JSON ke format CSV. Untuk mencapai matlamat ini, kami akan menggunakan kedua-dua modul Python CSV dan JSON . Fungsi JSON.Load () modul JSON akan membantu menukar fail JSON ke kamus python, manakala kaedah kelas CSV.dictwiter module csv csv Fail.
Berikut adalah contoh:
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,Finance
Untuk menukar fail JSON ke setara CSV, kami menggunakan langkah -langkah berikut:
fail CSV sangat popular dan sering digunakan dalam mengeksport dan mengimport spreadsheet dan pangkalan data. Format fail ini digunakan dengan kerap oleh mereka yang bekerja dengan data. Walau bagaimanapun, semasa pengaturcaraan dengan Python mungkin perlu dengan cepat menggunakan fail CSV, jadi penting untuk belajar bagaimana untuk melakukan operasi I/O Fail dengan CSV.
modul Python's CSV sangat berguna untuk bekerja dengan fail CSV, kerana ia menyediakan fungsi dan kelas yang diperlukan untuk tugas -tugas seperti ini.
Penting juga untuk diperhatikan bahawa kita mungkin perlu menukar fail dari satu format ke format yang lain (CSV ke JSON) seperti yang dilihat dalam contoh kami di atas.Soalan Lazim (Soalan Lazim) Mengenai Fail CSV Python
Bagaimana saya boleh mengendalikan fail CSV dengan nilai yang hilang dalam python? Perpustakaan di Python. Anda boleh membaca fail CSV ke dalam DataFrame, dan kemudian gunakan kaedah Fillna untuk mengisi nilai yang hilang dengan nilai tertentu atau nilai yang dikira. 🎜>
Atas ialah kandungan terperinci Bekerja dengan fail CSV menggunakan python, dengan contoh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!