首页 > 解决方案 > Python合并多个csv文件

问题描述

所以我尝试按照教程合并我所有的 csv 文件。在安装了 python 3 的同时,我犯了遵循 python 2 教程的错误。然后我尝试将其更改为 python 3。

现在我被以下代码困住了。

import glob
import csv

csvfiles = glob.glob('walk\*')
wf = csv.writer(open('output.csv', 'wb'), delimiter = ',')

for files in csvfiles:
    rd = csv.reader(open(files, 'r'), delimiter = ',')
    next(rd)
    for row in rd:
        print (row)
        wf.writerow(row)

使用此代码,我得到错误: 'TypeError: a bytes-like object is required, not 'str'' 。所以我用谷歌搜索了这个错误,发现我必须使用“rt”而不是 r 将文件作为文本文件打开。不幸的是,这并不能解决问题。

标签: pythonstringbyte

解决方案


您将 output.csv 作为带有“wb”的字节文件打开并尝试向其中写入文本。尝试在第 5 行中只使用“w”。或者,也许可以使用 pandas 进行检查。Pandas 有非常好的 I/O,你可以很容易地在重新保存之前将你的 csv 文件连接在一起。


推荐阅读