Python csv.reader按列实现两个csv合并
时间: 2023-10-09 07:17:32 浏览: 123
Python实现求两个csv文件交集的方法
要实现按列合并两个CSV文件,可以使用`zip`函数将两个CSV文件的列进行配对,然后将配对后的数据写入新的CSV文件。
以下是一个示例代码:
```python
import csv
def merge_csv_by_column(file1, file2, output_file):
with open(file1, 'r') as f1, open(file2, 'r') as f2, open(output_file, 'w', newline='') as output:
reader1 = csv.reader(f1)
reader2 = csv.reader(f2)
writer = csv.writer(output)
for row1, row2 in zip(reader1, reader2):
merged_row = row1 + row2 # 将两个行合并
writer.writerow(merged_row)
print("CSV files merged successfully!")
# 示例使用
file1 = 'file1.csv'
file2 = 'file2.csv'
output_file = 'merged.csv'
merge_csv_by_column(file1, file2, output_file)
```
在示例代码中,首先使用`open`函数打开两个CSV文件和输出文件。然后使用`csv.reader`函数创建两个读取器对象`reader1`和`reader2`,分别读取两个输入CSV文件。
接下来,通过`zip`函数将`reader1`和`reader2`配对,每次迭代时将两个行合并为一个新的行,并使用`csv.writer`的`writerow`方法将新行写入输出文件。
最后,关闭所有打开的文件,并打印出成功合并的消息。
请注意,在实际使用时,你需要替换示例代码中的文件名和路径为你自己的文件名和路径。
阅读全文