Skip to main content
 首页 » 编程设计

python之在 csv Python 中添加中间列

2025年05月04日12lidabo

我使用 csv 文件,python 似乎为处理 csv 文件提供了很大的灵 active 。

我发现了几个与我的问题相关的问题,但我不知道如何有效地组合这些解决方案...

我的起点 CSV 文件如下所示(注意“标题”行中只有 1 列):

FILE1 
Z1 20 44 3 
Z1 21 44 5 
Z1 21 44 8 
Z1 22 45 10 

我想做的是在第 1 列和第 2 列之间添加一列,其余部分保持不变。这个新列与其他列具有相同的 # 行,但所有条目都包含相同的整数(在我下面的示例中为 10)。另一个重要的一点是我真的不知道行数,所以我可能必须先以某种方式计算 # 行(?)然后我的输出应该如下所示:

FILE1 
Z1 10 20 44 3 
Z1 10 21 44 5 
Z1 10 21 44 8 
Z1 10 22 45 10 

有没有简单的解决办法?

请您参考如下方法:

我认为最简单的解决方案是只读取每一行并在新文件中写入相应的新行(具有插入的值):

import csv 
with open('input.csv', 'r') as infile: 
     with open('output.csv', 'w') as outfile: 
         reader = csv.reader(infile, delimiter=' ') 
         writer = csv.writer(outfile, delimiter=' ') 
         for row in reader:  
             new_row = [row[0], 10] 
             new_row += row[1:] 
             writer.writerow(new_row) 

不过,如果您除了批量处理之外没有对数据执行任何其他操作,那么这可能没有意义。如果是这样的话,您会想查看 csv 库。