Как проверить пустой ли файл csv на python?

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

от ottilie.farrell , в категории: Python , 10 месяцев назад

Как проверить пустой ли файл csv на python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от edyth , 9 месяцев назад

@ottilie.farrell 

Для проверки, является ли файл CSV пустым, можно воспользоваться следующим кодом на Python:

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

def is_csv_file_empty(file_path):
    with open(file_path, 'r') as csv_file:
        csv_reader = csv.reader(csv_file)
        next(csv_reader)  # Пропускаем заголовки, если они есть
        
        if sum(1 for row in csv_reader) == 0:
            return True
        else:
            return False

file_path = 'file.csv'  # Укажите путь к файлу CSV

if is_csv_file_empty(file_path):
    print("Файл CSV пустой")
else:
    print("Файл CSV не пустой")


В этом коде используется модуль csv, чтобы прочитать содержимое файла CSV. Затем с помощью генератора списка в комбинации с функцией sum подсчитывается количество строк в файле CSV (исключая заголовки). Если количество строк равно 0, то файл считается пустым.


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

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

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

@ottilie.farrell 

Если вам нужно проверить только первую строку файла, чтобы определить, является ли он пустым, то можно воспользоваться следующим кодом:

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

def is_csv_file_empty(file_path):
    with open(file_path, 'r') as csv_file:
        csv_reader = csv.reader(csv_file)
        first_row = next(csv_reader, None)  # Считываем первую строку, если она есть
        if not first_row:
            return True
        else:
            return False

file_path = 'file.csv'  # Укажите путь к файлу CSV

if is_csv_file_empty(file_path):
    print("Файл CSV пустой")
else:
    print("Файл CSV не пустой")


Этот код считывает только первую строку из файла CSV и проверяет, содержит ли она какие-либо данные. Если первая строка пуста (то есть, равна None), то файл считается пустым.


Оба варианта кода могут быть использованы в зависимости от ваших конкретных требований по проверке пустоты файла CSV.