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'
有什麼線索發生了什麼?