gpt4 book ai didi

python - 文件对象传递抛出 csv 阅读器 Python 3.6

转载 作者:行者123 更新时间:2023-11-28 22:22:06 25 4
gpt4 key购买 nike

示例文件对象数据包含以下内容,

b'QmFyY29kZSxRdHkKQTIzMjMsMTAKQTIzMjQsMTUKNjUxMDA1OTUzMjkyNSwxMgpBMjMyNCwxCkEyMzI0LDEKQTIzMjMsMTAK'

python文件包含以下代码

string_data = BytesIO(base64.decodestring(csv_rec))
read_file = csv.reader(string_data, quotechar='"', delimiter=',')
next(read_file)

当我在 python 中运行上面的代码时,出现以下异常

_csv.Error: iterator should return strings, not int (did you open the file in text mode?)

如何在文本模式下打开字节数据?

最佳答案

你快到了。实际上,csv.reader 需要返回字符串(而非字节)的迭代器。此类迭代器由 BytesIO 的兄弟 - io.StringIO 提供。

from io import StringIO
csv_rec = b'QmFyY29kZSxRdHkKQTIzMjMsMTAKQTIzMjQsMTUKNjUxMDA1OTUzMjkyNSwxMgpBMjMyNCwxCkEyMzI0LDEKQTIzMjMsMTAK'

bytes_data = base64.decodestring(csv_rec)
# decode() method is used to decode bytes to string
string_data = StringIO(bytes_data.decode())
read_file = csv.reader(string_data, quotechar='"', delimiter=',')
next(read_file)

关于python - 文件对象传递抛出 csv 阅读器 Python 3.6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47828854/

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