@estry

Как заменить первую строку в файле csv Python?

Делаю распарс каталога. Данные складываю в CSV файл.
Ситуация такая что заголовки могут меняться. Тогда я их обновляю:
with open('csv_write_dictwriter.csv', 'r+', newline='', encoding='cp1251') as f:
         writer = csv.DictWriter(f, fieldnames=headers, delimiter=';')
         writer.writeheader()


Но в итоге почему-то урезает и вторую строку в файле csv. Подскажите как правильно менять заголовки в csv файле
  • Вопрос задан
  • 388 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
По простому - никак. Текстовый файл - это последовательность СИМВОЛОВ, а не строк.
Так что если у тебя новые заголовки длиннее старых, то они перезапишут данные дальше. А если новые заголовки короче старых, то останётся кусок старых заголовков.
Единственный вариант - записать в новый файл новые заголовки, потом перекопировать туда всё, кроме заголовков, из исходного файла. Затем удалить исходный файл, и переименовать новый в исходный.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы