我想动态删除CSV中的列,这是我到目前为止所拥有的。我不知道从哪里开始:
# Remove column not needed.
column_numbers_to_remove = 3,2,
file = upload.filepath
#I READ THE FILE
file_read = csv.reader(file)
REMOVE 3 and 2 column from the CSV
UPDATE SAVE CSV
答案 0 :(得分:3)
使用enumerate
获取列索引,并创建一个没有您不想要的列的新行...例如:
for row in file_read:
new_row = [col for idx, col in enumerate(row) if idx not in (3, 2)]
然后使用csv.writer
在某处写出你的行......
答案 1 :(得分:1)
读取csv并在删除列后写入另一个文件。
import csv
creader = csv.reader(open('csv.csv'))
cwriter = csv.writer(open('csv2.csv', 'w'))
for cline in creader:
new_line = [val for col, val in enumerate(cline) if col not in (2,3)]
cwriter.writerow(new_line)