gpt4 book ai didi

python - 在 python 3 中读取 gzip 压缩的 csv 文件

转载 作者:太空狗 更新时间:2023-10-29 20:37:06 25 4
gpt4 key购买 nike

我在使用 gzipcsv 库读取 gzip 压缩的 csv 文件时遇到问题。这是我得到的:

import gzip
import csv
import json

f = gzip.open(filename)
csvobj = csv.reader(f,delimiter = ',',quotechar="'")
for line in csvobj:
ts = line[0]
data_json = json.loads(line[1])

但这会引发异常:

 File "C:\Users\yaronol\workspace\raw_data_from_s3\s3_data_parser.py", line 64, in download_from_S3
self.parse_dump_file(filename)
File "C:\Users\yaronol\workspace\raw_data_from_s3\s3_data_parser.py", line 30, in parse_dump_file
for line in csvobj:
_csv.Error: iterator should return strings, not bytes (did you open the file in text mode?)

解压缩文件并使用 csv 打开它工作正常。我还尝试解码文件文本以从字节转换为 str...

我在这里错过了什么?

最佳答案

gzip.open 的默认模式是 rb,如果你想使用 strs,你必须额外指定它:

f = gzip.open(filename, mode="rt")

OT:在 with block 中编写 I/O 操作是一个好习惯:

with gzip.open(filename, mode="rt") as f:

关于python - 在 python 3 中读取 gzip 压缩的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30324503/

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