Rumah > Artikel > pembangunan bahagian belakang > Petua pemprosesan fail CSV dalam Python
CSV (Nilai Dipisahkan Koma) ialah format storan data yang biasa digunakan. Kesederhanaan dan kepelbagaiannya menjadikannya satu cara pertukaran dan pemprosesan data yang penting. Dalam bahasa Python, pemprosesan fail CSV juga sangat mudah Mari kita meneroka beberapa teknik pemprosesan fail CSV dalam Python.
Baca dan tulis fail CSV dengan mudah menggunakan modul csv terbina dalam Python. Untuk membaca fail CSV, anda boleh menggunakan fungsi csv.reader(), seperti yang ditunjukkan di bawah:
import csv with open('data.csv', newline='') as csvfile: reader = csv.reader(csvfile) for row in reader: print(row)
Dalam contoh ini, kami membuka fail data.csv dan mencipta pembaca objek pembaca CSV. Kemudian, kami menggunakan gelung untuk membaca data baris demi baris dan mencetaknya. Langkah-langkah untuk membaca fail CSV boleh diringkaskan sebagai:
Untuk menulis pada fail CSV, anda boleh menggunakan fungsi csv.writer(), seperti yang ditunjukkan di bawah:
import csv with open('data.csv', 'w', newline='') as csvfile: writer = csv.writer(csvfile) writer.writerow(['Name', 'Age', 'Gender']) writer.writerow(['Tom', '25', 'Male']) writer.writerow(['Mary', '23', 'Female'])
Dalam contoh ini, kami mencipta penulis objek penulis CSV, dan kemudian gunakan kaedah writerow() Tulis ke fail CSV baris demi baris. Langkah-langkah untuk menulis fail CSV boleh diringkaskan sebagai:
Selepas membaca fail CSV, kami boleh mengendalikan data dalam fail CSV mengikut keperluan. Berikut ialah beberapa petua operasi biasa.
(1) Dapatkan lajur data tertentu dalam fail CSV
Untuk mendapatkan lajur data tertentu dalam fail CSV, anda boleh menggunakan kod berikut:
import csv with open('data.csv', newline='') as csvfile: reader = csv.reader(csvfile) for row in reader: print(row[0]) # 获取第一列数据
Dalam contoh ini, kami Gunakan baris[0] untuk mendapatkan lajur pertama data dalam fail CSV. Jika anda perlu mendapatkan lajur lain, anda boleh menukar nombor kepada nombor lajur yang sepadan -1 (pengindeksan bermula dari 0 dalam Python).
(2) Tapis data dalam fail CSV
Untuk menapis data dalam fail CSV, anda boleh menggunakan ungkapan bersyarat Python untuk menentukan sama ada setiap baris data memenuhi keperluan, seperti yang ditunjukkan di bawah:
import csv with open('data.csv', newline='') as csvfile: reader = csv.reader(csvfile) for row in reader: if row[0] == 'Tom': print(row)
Dalam contoh ini, kami menggunakan pernyataan if untuk menapis data orang bernama Tom. Jika anda perlu menapis syarat lain, anda hanya perlu mengubah suai syarat dalam pernyataan if.
(3) Tukar fail CSV kepada kamus
Dalam sesetengah kes, kami perlu menukar fail CSV kepada data jenis kamus untuk memudahkan operasi seterusnya. Anda boleh menggunakan kod berikut untuk mencapai ini:
import csv with open('data.csv', newline='') as csvfile: reader = csv.DictReader(csvfile) for row in reader: print(row)
Dalam contoh ini, kami menggunakan fungsi csv.DictReader() untuk membaca fail CSV dan menukar setiap baris data menjadi objek kamus. Dalam operasi seterusnya, kami boleh menggunakan data jenis kamus untuk pemprosesan yang lebih mudah dan cekap.
Dalam penggunaan sebenar, kami biasanya perlu mengimport fail CSV ke dalam Python untuk analisis, atau mengeksport hasil yang diproses oleh Python sebagai CSV fail. Berikut ialah beberapa teknik import dan eksport biasa.
(1) Import fail CSV ke dalam Panda
Panda ialah pustaka pemprosesan data yang berkuasa dalam Python, yang boleh mengimport fail CSV ke dalam objek DataFrame untuk pembersihan dan analisis data serta operasi visualisasi. Anda boleh menggunakan kod berikut untuk mengimport fail CSV ke dalam Panda:
import pandas as pd data = pd.read_csv('data.csv')
Dalam contoh ini, kami menggunakan fungsi pd.read_csv() untuk membaca fail data.csv ke dalam objek DataFrame, dan kemudian menggunakan Pelbagai berfungsi untuk memproses data.
(2) Eksport data Python ke fail CSV
Jika kami memproses beberapa data dalam Python dan perlu mengeluarkan hasil ke fail CSV, kami boleh menggunakan csv.writer() accomplish. Berikut ialah contoh mudah:
import csv data = [['Name', 'Age', 'Gender'], ['Tom', '25', 'Male'], ['Mary', '23', 'Female']] with open('out.csv', 'w', newline='') as csvfile: writer = csv.writer(csvfile) for row in data: writer.writerow(row)
Dalam contoh ini, kami menulis senarai dua dimensi pada fail CSV out.csv. Anda boleh mengubah suai kandungan data seperti yang diperlukan untuk mengeluarkan fail CSV yang berbeza.
Ringkasan
Python menyediakan fungsi pemprosesan fail CSV yang mudah dan fleksibel, yang membantu kami membaca fail CSV dengan cepat, memanipulasi data, mengimport ke dalam Panda dan melaksanakan pemprosesan data yang lebih maju dan mengeluarkan hasil pemprosesan sebagai fail CSV. Pada masa yang sama, perlu diingatkan bahawa fail CSV yang berbeza mungkin mempunyai struktur dan kaedah pengekodan yang berbeza, dan ia perlu diproses dengan sewajarnya mengikut situasi tertentu untuk memastikan ketepatan dan integriti data.
Atas ialah kandungan terperinci Petua pemprosesan fail CSV dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!