擅长:python、mysql、java
<p>可以同时打开要读取的文件和要写入的文件。假设您知道要保留的列的索引,例如0、2和4:</p>
<pre><code>good_cols = (0,2,4)
with open(Ftemp, 'r') as fin, open(Fout, 'w') as fout:
for line in fin:
line = line.rstrip() #clean up newlines
temp = line.split(',') #make a list from the line
data = [temp[x] for x in range(len(temp)) if x in good_cols]
fout.write(','.join(data) + '\n')
</code></pre>
<p>列表理解(数据)只从每一行中提取要保留的列,并使用join方法(加上为每一新行添加一个结束行)立即逐行写入新文件。你知道吗</p>
<p>如果您只知道要保留/删除的字段的名称,则需要从csv文件的第一行提取索引,但这并不困难。你知道吗</p>