是否可以从Python中的protobuf str表示创建一个对象

时间:2014-03-12 15:04:28

标签: python protocol-buffers

我有一个protobuf字符串表示某些对象(__str___() def)。是否可以轻松地从该字符串创建该对象?或唯一可行的方法是自编写解析器? 默认序列化\反序列化不适用,因为对象状态修改应在编程范围之外执行。整个流程如下:

  1. 从网络获得ser表示;
  2. 将此表示形式设置为对象;
  3. 获取对象的字符串表示形式;
  4. 将此表示传递给想要更改某些字段的人 (字符串表示中的值已更改)。这里将被创建 一个单独的文件,其中包含所有接收对象的str表示 (会有很多物品);
  5. NEW 字符串转换为Py对象;
  6. Ser对象;
  7. 通过网络传递服务信息。

1 个答案:

答案 0 :(得分:0)

这将取决于您如何将对象表示为str()。如果对象是机器可解析的,那么你将获得最好的运气。如果你使用json,yaml或xml,你可以使用内置的序列化库,否则你需要自己动手。