首页 > 解决方案 > 如何添加到 CSV 文件列表中的特定项目

问题描述

如何在 CSV 文件的列表中添加/修改特定项目

1,2,5,x
1,5,7,x
6,5,9,x

如何在python中添加每行的第二个和第三个项目并将结果保存在每行的x中?

标签: pythonlistcsv

解决方案


这是打开 csv 文件,更改内存中的值,然后将更改写回磁盘的解决方案。

r = csv.reader(open('/tmp/test.csv')) # Here your csv file
lines = list(r)

行内容:

[[1,2,5,0],#0 value is to be replaced
 [1,5,7,0],
 [6,5,9,0]]

修改第一行的 x 值,在我们的例子中0是:

lines[0][3] =  lines[0][1] + lines[0][2]

行内容:

[[1,2,5,7],#value changed here
 [1,5,7,0],
 [6,5,9,0]]

现在我们只需要将它写回文件

writer = csv.writer(open('/tmp/output.csv', 'w'))
writer.writerows(lines)

您需要对所有其他行遵循相同的逻辑。理想情况下使用 for 循环,例如

for i in range(len(lines)):
   lines[i][3] = lines[0][1] + lines[0][2]

推荐阅读