您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在python中以CSV格式写入输出文件?

如何在python中以CSV格式写入输出文件?

其他人回答说,使用Python 3时,您应该以文本模式打开输出文件,即

with open('out.csv', 'w', newline='') as resultFile:
    ...

但是,您还需要解析传入的CSV数据。因为它是您的代码,所以将输入CSV文件的每一行作为单个字符串读取。然后,无需将该行分成其组成字段,它会将字符串传递给CSV编写器。结果,csv.writer将将字符串视为一个序列,并将每个字符包括任何终止的换行符)输出为单独的字段。例如,如果您输入的CSV文件包含:

1,2,3,4

您的输出文件将这样写:

1,“,”,2,“,”,3,“,”,4,“
”

您应该将for循环更改为此:

for row in csv.reader(f1):
    # process the row
    wr.writerow(row)

现在,输入的CSV文件将被解析为字段,row并将包含一串字符串-每个字段一个。对于前面的示例,row将是:

for row in csv.reader(f1):
    print(row)



['1','2','3','4']

当该列表传递到时,csv.writer文件输出将是:

1,2,3,4

将所有这些放在一起,您将获得以下代码

import csv

with open('input_1.csv') as f1, open('out.csv', 'w', newline='') as resultFile:
    wr = csv.writer(resultFile, dialect='excel')
    for row in csv.reader(f1):
        wr.writerow(row)
python 2022/1/1 18:44:03 有298人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶