from avro import io, datafile
import pprint
OUTFILE_NAME = "demo.avro"
rec_reader = io.DatumReader()
df_reader = datafile.DataFileReader(open(OUTFILE_NAME, 'r'), rec_reader)
pp = pprint.PrettyPrinter()
for record in df_reader:
pp.pprint(record)
df_reader.close()
我收到此错误
"AttributeError: 'str' object has no attribute 'decode'".
如果有人能指导我这个错误, 提前谢谢。
答案 0 :(得分:0)
在Python3中,常规字符串为unicode
,并且没有decode
方法。字节串可以。
我对avro
一无所知,也没有显示错误堆栈。但很好的猜测datafile.DataFileReader
期望文件以rb
模式打开。或者它可能需要文件名,并且open
本身(numpy
读者接受文件名或打开的文件)。