首页 > 编程语言 > 详细

python protobuf序列化repeated运用

时间:2015-11-12 13:09:58      阅读:307      评论:0      收藏:0      [点我收藏+]

 

  下面是proto描述文件的定义

message Person {
required string name = 1;
required int32 id = 2;
optional string email = 3;
enum PhoneType {
MOBILE = 0;
HOME = 1;
WORK = 2;
}
message PhoneNumber {
required string number = 1;
optional PhoneType type = 2 [default = HOME];
}
repeated PhoneNumber phone = 4;
}
message AddressBook {
repeated Person person = 1;
}

  在python中利用google.protobuf序列化数据进行通讯的时候,一定会遇到repeated的数据如何去创建

  在这里我给大家分享一下:

  

import addressbook_pb2
person = addressbook_pb2.Person()
person.id = 1234
person.name = "John Doe"
person.email = ""
phone = person.phone.add()
phone.number = "555-4321"
phone.type = addressbook_pb2.Person.HOME person.no_such_field = 1 person.id = "1234"

  请注意加红的一行代码,这就是重点,如果想再添加一个的话phone2 = person.phone.add()即可,然后给phone2赋值

python protobuf序列化repeated运用

原文:http://www.cnblogs.com/ymy124/p/4958552.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!