Добро пожаловать в переполнение стека! Описанная вами проблема не соответствует предоставленному вами коду. Я приведу здесь решение проблемы, которую вы описали:
- Вы хотите сохранить значения de из столбцов 4, 5, 6
- Вы хотите вставить новые значения в столбец 1, 2, 3
Настоятельно не рекомендуется читать и записывать в файл одновременно (если вы действительно не знаете, что делаете). Поэтому здесь, в моем решении, я запишу во временный файл, и когда все будет готово, я переименую этот временный файл в имя исходного файла, чтобы перезаписать его. Я также предполагаю, что значения, которые вы хотите вставить в 3 первых столбца, находятся в переменной values_generated_to_insert_in_output
import csv
import os
values_generated_to_insert_in_output = [
['missile', 'claim', 'winter'],
['screw', 'mill', 'mean'],
['privilege', 'deadly', 'tap'],
['conference', 'intermediate', 'tune'],
]
with open('wagonFrontData.csv', newline='') as input_file:
csv_reader = csv.reader(input_file)
with open('output_file.csv', 'w', newline='') as output_file:
csv_writer = csv.writer(output_file)
for (old_colums, new_colums) in zip(csv_reader,
values_generated_to_insert_in_output):
row_to_output = list(new_colums).extend(old_colums[3:6])
csv_writer.writerow(row_to_output)
os.replace('output_file.csv', 'wagonFrontData.csv')
Это то, что вы хотели сделать?