Как сравнить 2 csv файла на python?

Пользователь

от miguel_ritchie , в категории: Python , 2 месяца назад

Как сравнить 2 csv файла на python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от deshaun_cormier , 2 месяца назад

@miguel_ritchie 

Для сравнения двух CSV файлов на Python можно использовать модуль csv и стандартные функции языка.


Пример кода, который сравнивает два CSV файла построчно и выводит отличающиеся строки:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import csv

def compare_csv_files(file1, file2):
    with open(file1, 'r') as f1, open(file2, 'r') as f2:
        reader1, reader2 = csv.reader(f1), csv.reader(f2)
        for row1, row2 in zip(reader1, reader2):
            if row1 != row2:
                print("Different rows:")
                print(row1)
                print(row2)
                print()

# Пример использования
compare_csv_files("file1.csv", "file2.csv")


Этот код открывает оба файла, создает для них объекты csv.reader, и затем сравнивает строки построчно с помощью функции zip(). Если строки отличаются, они выводятся на экран.


Обратите внимание, что код предполагает, что оба файла имеют одинаковое количество строк и столбцов. Если это не так, то возможно будет необходимо дополнительное логирование или обработка этого случая.