protobuf

1. 下载安装

环境:mac os

  1. 从网站下载 名字类似于 protoc-3.9.1-osx-x86_64.zip 的zip 文件
  2. 新建目录protobuf-3.9.1, 将zip 放到该目录下, 执行 unzip protoc-3.9.1-osx-x86_64.zip
  3. 解压处三个目录。可执行文件在bin 目录下,可以将bin/protoc 文件放到环境变量PATH 下。

2. demo

  1. 新建一个文件 person.proto, 内容如下
 syntax = "proto3";

 message Person {
   int64 age = 1;
   string name = 2;
 }

具体语法看文档proto3

  1. 新建一个 目录叫 out
    mkdir out

  2. 执行命令 , 会在out 目录下生成 person_pb2.py 文件
    protoc --proto_path=. --python_out=./out person.proto

  3. 使用
    在out 目录下新建一个py 文件,内容如下

 import person_pb2

 if __name__ == '__main__':
     person = person_pb2.Person()
     person.age = 12
     person.name = 'YuYang'
     print(person)
     print("*" * 10)
     # serialize
     serial_str = person.SerializeToString()
     print(serial_str)
     print("*" * 10)
     person2 = person_pb2.Person().FromString(serial_str)
     print(person2.age)
     print(person.name)

以上只是最浅显的使用

你可能感兴趣的:(protobuf)