Tantangan hari ini sangat mudah, kita perlu menulis program Python sederhana untuk membandingkan dua file CSV untuk menentukan apakah ada perbedaan di antara keduanya. Show
Untuk setiap baris, jika berbeda, kami mengeluarkan nomor baris diikuti dengan konten baris dari kedua file Misalnya, jika konten file CSV pertama adalah tanda2. csv dan konten file CSV kedua adalah Program harus memberi kita output berikut Berikut adalah video yang menunjukkan cara kerja program. Solusi yang disarankan dan menjalankannya dapat ditemukan di bawah Solusi yang Disarankan f = open ('marks1.csv', 'r') g = open ('marks2.csv', 'r') line = 0 print('Differences Found') while True: lineF = f.readline().strip() lineG = g.readline().strip() line += 1 if (lineF or lineG): if (lineF != lineG): print("Line %d (%s vs %s)" %(line, lineF, lineG)) else: f.close() g.close() break Konsep Utama yang Digunakan
Melintasi Kita mulai dengan membuka dua file (marks1. csv dan mark2. csv) dan menyimpannya ke dalam variabel Artikel ini akan membahas berbagai metode untuk membandingkan dua file CSV. Kami akan menyertakan cara paling "Pythonic" untuk melakukan operasi ini dan modul Python eksternal yang dapat membantu menyederhanakan tugas ini Terakhir, kami akan menyertakan metode menggunakan Pandas DataFrames untuk mengidentifikasi perbedaan dalam file CSV Kami akan berasumsi bahwa dua file CSV yang perlu kami bandingkan diberi judul 0 dan 1. Anda dapat mengganti nama file sesuai keinginan AndaHarap ganti juga nama file dengan benar dalam cuplikan kode yang diberikan di bawah ini Untuk tujuan contoh, kami memiliki pengaturan file kami sebagai berikut _0 _ _1 _Metode 1. Bandingkan Dua File CSV Menggunakan Solusi Kebanyakan PythonicDalam metode ini, kami membaca konten file ke dalam dua daftar, beralih ke salah satu daftar dan memeriksa apakah setiap baris ada di daftar kedua atau tidak. Logikanya, ini adalah solusi yang sangat sederhana Efisiensi yang mendasari Python membuat perbandingan ini cukup efisien, terlepas dari tampilannya
Cuplikan kode di atas akan mencetak baris yang berbeda ke terminal Anda Dalam kasus pengujian kami, kami mendapatkan yang berikut sebagai output Metode 2. Bandingkan Dua File CSV Menggunakan 1,2,3,4,5,6 4,5,6,7,8,9 2,3,1,4,1,5 4 - Modul EksternalPertama, instal modul menggunakan perintah berikut di terminal Anda _Setelah diinstal, Anda tidak perlu menulis skrip Python. Anda dapat menjalankan ini langsung di terminal dengan perintah berikut
Menjalankan perintah ini akan menampilkan perbedaan pada terminal Anda Dalam kasus pengujian kami, kami mendapatkan yang berikut sebagai output
Untuk menggunakan modul ini sebagai bagian dari skrip Python, Anda dapat menulis skrip seperti berikut ini
Output untuk ini adalah sebagai berikut
Metode 3. Bandingkan Dua File CSV Menggunakan Pandas DataFramesSkrip berikut dapat melakukan tugas ini untuk Anda
Harap perhatikan bahwa dalam metode _5, argumen 6 dimasukkan karena file pengujian kami tidak memiliki header apa pun. Jika file Anda memiliki header, Anda dapat membacanya menggunakan. 7, di mana 0 akan digantikan oleh file AndaJika file Anda tidak ada di direktori yang sama dengan skrip Anda, berikan path lengkap ke file CSV Anda Skrip Python di atas harus menghasilkan output seperti
Baris di sebelah 9 dan 0 mengandung semua perbedaan. Baris di sebelah 1 hanya mewakili indeks
Bagaimana cara membandingkan 2 file CSV dengan Python?csv-diff . Instalasi. pip instal csv-diff Penggunaan. Pertimbangkan dua file CSV. . Sebagai perpustakaan Python. Anda juga dapat mengimpor pustaka Python ke dalam kode Anda sendiri seperti itu. dari csv_diff import load_csv, bandingkan diff = bandingkan( load_csv(open("one. csv"), key="id"), load_csv(open("dua. csv"), key="id") ) Bagaimana cara membandingkan data antara dua file CSV?Klik tombol "Bandingkan" untuk membandingkan file CSV Anda . Anda dapat memilih untuk hanya menampilkan baris dengan perbedaan atau menampilkan semuanya (Dengan kode warna untuk memvisualisasikan perbedaan). Anda juga dapat langsung membandingkan dua file CSV dengan menentukan urlnya di parameter GET url1 dan url2.
Bagaimana cara membandingkan dua file dalam Python baris demi baris?Metode 1. Menggunakan unified_diff()
. Untuk mendapatkan perbedaan menggunakan pustaka difflib, kita harus memanggil fungsi unified_diff() untuk perbandingan ini. Parameter. file1. Daftar String seperti file_1_text.
Bagaimana cara membandingkan 2 file CSV di panda?Panda juga memiliki fungsi merge() yang berguna untuk membandingkan kedua file CSV. Itu melakukan gabungan dalam, gabungan luar atau keduanya bergabung pada kolom. Anda harus meneruskan kerangka data yang ingin Anda bandingkan sebagai daftar di dalam metode gabungan (). Fungsi akan membandingkan dan mengembalikan kerangka data. |