gpt4 book ai didi

python - 在 Python 3 中编写 csv

转载 作者:行者123 更新时间:2023-12-01 04:55:32 25 4
gpt4 key购买 nike

我是Python的初学者,我想做的就是删除表中某些销售中的空间。但由于错误,我无法写入csv。我已经检查了 stackoverflow 中的几篇相关帖子,但仍然无法纠正我的代码。

错误

第 27 行,位于
csvWriter.writerow(已更正)
类型错误:“str”不支持缓冲区接口(interface)

代码

import csv

# Read CSV
csvfile = '/Users/Study/Data/WGI/forPython.csv'
f = open(csvfile, 'r', newline='')
data = csv.reader(f)

#
g = open('/Users/Study/Data/WGI/WGI_Data_Renamed_Python.csv', 'ab')
csvWriter = csv.writer(g)

#
corrected = []

count = 0

#
for row in data:
corrected.append([])
corrected[count] = str.rstrip(row[0])
count = count + 1

print(corrected)

#
csvWriter.writerow(corrected)
g.close()

最佳答案

显然,Python 3 中的 csv.writer doesn't support binary output streams 。文档中没有提到这一点,更糟糕的是,它与 Python 2 建议始终使用 b 打开底层文件相背离。

幸运的是,修复很简单:只需以文本模式而不是二进制模式打开文件即可。 docs还建议您在打开文件时指定 newline='',因此您也可以这样做。

g = open('/Users/Study/Data/WGI/WGI_Data_Renamed_Python.csv', 'a', newline='')
csvWriter = csv.writer(g)

关于python - 在 Python 3 中编写 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27489781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com