Задать вопрос
Этот вопрос закрыт для ответов, так как повторяет вопрос Как мне отфильтровать csv файл по датам?
Carler
@Carler
Ох уж эти таблицы

Как удалить строки в CSV?

В общем возникла проблема. У меня есть большой csv файл с колонкой, device и есть список из нескольких значений. Мне нужно удалить всю строку из файла, если в колонке device, есть значение из списка
  • Вопрос задан
  • 1543 просмотра
Подписаться 1 Простой
Решения вопроса 1
Carler
@Carler Автор вопроса
Ох уж эти таблицы
with open('import.csv', newline='') as source:
    reader = csv.DictReader(source)
    with open('export.csv', mode='w', encoding='utf-8-sig', newline='') as destination:

        writer = csv.DictWriter(destination, dialect=csv.unix_dialect, fieldnames=reader.fieldnames)
        writer.writeheader()
        writer.writerows(
            filter(lambda x: x.get('date') not in weekend_days, reader)
        )
Ответ написан
Ответы на вопрос 1
ipatiev
@ipatiev
Потомок старинного рода Ипатьевых-Колотитьевых
создаём пустой временный файл
читаем большой csv файл построчно:
    проверяем нужное условие: 
        если оно выполняется, то пишем строку в новый файл
закрываем временный файл
переименовываем временный файл в исходный
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы