If the question is very simple, you don’t even need to usecsv:
with open('old.csv') as reader, open('new.csv', 'w') as writer: for line in reader: items = line.strip().split() print(' '.join(items[:2]+items[3:]), file=writer)
Write a general:
import csv def del_cvs_col(fname, newfname, idxs, delimiter=' '): with open(fname) as csvin, open(newfname, 'w') as csvout: reader = csv.reader(csvin, delimiter=delimiter) writer = csv.writer(csvout, delimiter=delimiter) rows = (tuple(item for idx, item in enumerate(row) if idx not in idxs) for row in reader) writer.writerows(rows) del_cvs_col('a.csv', 'b.csv', [2])
If the question is very simple, you don’t even need to use
csv
:Write a general:
The column specified indel_cvs_col
會將fname
轉成newfname
用delimiter
來做分割字元,且會去除掉在idxs
.Questions I answered: Python-QA
For reference only, I feel like there is something wrong