0
我最近开始使用protobuf。我有如下一个问题:protobuf:text_format模块抱怨“需要类似对象的字节”
我创建了一个protobuf的消息,填补了一些内容,并写下了文本格式磁盘:
f = open('/home/centos/pb.conf','w')
f.write(text_format.MessageToString(c))
现在我尝试从磁盘读取的protobuf出来,放回蟒蛇对象:
c2=cf.Configure()
input = open('/home/centos/pb.conf','rb')
b = input.read()
text_format.Merge(b, c2)
然后,可悲的是,我得到这个错误:
471 return MergeLines(
--> 472 text.split('\n'),
473 message,
474 allow_unknown_extension,
TypeError: a bytes-like object is required, not 'str'
howeve r,似乎'b'中的消息是字节格式:
Out[49]: b'name: "david"\ncar_fe_config {\n name: "style_slow"\n}\nfleet_fe_config {\n name: "style_fast"\n}\n'
有什么线索发生了什么?