Definisi: CSV (nilai yang dipisahkan koma) mirip dengan file teks di mana data yang disimpan dipisahkan oleh beberapa pembatas (biasanya koma). Setiap bidang dipisahkan oleh pembatas. Dengan Python, file CSV diproses menggunakan modul CSV. Jadi, kita harus mengimpor modul ini.
Ex: impor csv
Contoh di bawah ini menunjukkan cara data disimpan dalam file CSV. Di sini, koma digunakan sebagai pembatas.
Nama file : person_info.csv
nama depan, nama tengah, nama belakang, umur
Anand,kumar,matematika,31
Sachin, ramesh, tendulakar, 40
Virendra,sehwag,singh,38
Rahul,dravid,xyz,40
File CSV dapat dibuka dalam salah satu mode berikut:
r -> mode baca
w -> mode tulis
a -> tambahkan mode
Dalam Python, operasi file dilakukan dalam urutan berikut:
- Buka file;
- Baca, tulis, atau tambahkan. Ketika kami menentukan mode tulis, file akan dibuka dalam mode tulis jika file tersebut ada, jika tidak, itu akan membuat file. Ini juga berlaku untuk mode penambahan. Dalam mode baca, jika ada file, itu akan membuka file dalam mode baca, jika tidak, itu melempar pengecualian FileNotFoundError; dan
- Tutup file.
Buka file csv
Metode bawaan open() digunakan.
Ex:
- f = buka(“nama file.csv”,”r”) # Dalam csv python default adalah mode baca
- f = buka(“nama file.csv”,'w') # mode tulis
Menutup file
Metode bawaan close() digunakan.
fp = buka("nama file.csv",'w')# melakukan beberapa operasi file
fp.Menutup()
Operasi file menggunakan with
Cara terbaik untuk melakukan operasi file CSV, dan metode yang paling umum digunakan, adalah dengan pernyataan. Menggunakan ini memastikan bahwa file ditutup ketika blok di dalam dengan keluar.
Ex:
dengan open('nama file.csv', 'w', encoding = 'utf-8') sebagai fp:#melakukan beberapa operasi file
#pernyataan di luar blok with
Ketika kita keluar dengan blok, file akan ditutup secara otomatis.
Menulis ke file CSV
Untuk menulis ke dalam file CSV, kita perlu membukanya dalam mode tulis 'w' atau tambahkan 'a'.
Dalam contoh di bawah ini, kita akan membaca dari satu file dan menulis ke file baru.
impor csvdengan open('nama file.csv','r') sebagai fp:
pembaca = csv.pembaca(fp)#membaca file
dengan open('namafile baru.csv','w') sebagai fq:
penulis = csv.penulis(fq, pembatas = '-')
untuk baris di pembaca:#Untuk mengulangi setiap baris
penulis.writerow(baris)#tulis baris ke file baru
Menggunakan penulis kamus
Pada contoh di bawah ini, kita akan membaca dari satu file dan menulis ke file baru menggunakan metode DictWriter().
impor csvdengan open('nama file.csv','r') sebagai fp:
pembaca = csv.DictReader(fp)#membaca file
dengan open('namafile baru.csv','w',newline=") as fq:#newline ="untuk menghindari penambahan baris baru tambahan
row_names = ['nama depan','nama tengah','nama belakang','umur']
penulis = csv.DictWriter(fq, nama bidang = nama_baris, pembatas = '-')
penulis.writeheader()#menulis baris judul
untuk baris di pembaca:
penulis.baris tulis (baris)
Penulisan()
Metode ini menulis beberapa baris sekaligus; kita harus melewati daftar daftar. Ex:
impor csvhead_names = ['nama depan','nama tengah','nama belakang','umur']
# baris data file csv
baris = [['Anand','kumar','matematika',31],
['Sachin','ramesh','tendulakar',40],
['Virendra','sehwag','singh',38],
['Rahul','dravid','xyz',40]]
# menulis ke file csv
dengan open('namafile baru.csv', 'w') sebagai fp:
# membuat objek penulis csv
csvwriter = csv.penulis (fp)
#tulis judulnya
penulis csv.writerow(nama_kepala)
# tulis baris datanya
penulis csv.writerows(baris)
Membaca dari file
Untuk membaca file CSV dengan Python, kita harus membuka file dalam mode membaca 'r'. Ex:
impor csvdengan open('nama file.csv','r') sebagai fp:
data = csv.pembaca (fp)
#pembatas default adalah koma, jika csv dipisahkan oleh pembatas lain perlu ditentukan
#Ex data = csv.pembaca(fp, pembatas = '-')
print(data) # itu mengembalikan objek
#melewati header
berikutnya(data)#panggil metode generator berikutnya
untuk baris dalam data:#Untuk mengulangi setiap baris
print(line) # cetak setiap nilai dalam daftar
fp.seek(0)# bawa kursor ke baris pertama
untuk baris dalam data:
print(line[0])# hanya mencetak nama depan
Menggunakan pembaca kamus
Untuk membaca file csv menggunakan metode DictReader().
impor csvdengan open('nama file.csv','r') sebagai fp:
pembaca = csv.DictReader(fp)#membaca file
untuk baris di pembaca:
print(baris)#cetak setiap baris dalam bentuk kamus
fp.seek(0)# bawa kursor ke baris pertama
untuk data di pembaca:
print(data['age'])#kita hanya dapat mencetak umur dengan menggunakan tombol 'umur'
Kesimpulan
Kami telah belajar cara membaca dan menulis file menggunakan modul CSV. File CSV adalah format file yang paling umum digunakan dalam industri otomasi karena mudah dibaca dan diubah datanya. Selain itu, Pandas adalah metode lain yang dapat kita gunakan untuk memproses file CSV.