protobuf

Protobuf(Protocol Buffers)是一种语言无关、平台无关的数据序列化格式,由Google开发。它旨在提供一种高效、简单和自动化的方式来序列化结构化数据,常用于网络通信、数据存储和消息传递等领域。

Protobuf使用.proto文件定义数据结构,然后通过编译器生成对应的代码,这些代码可以用于不同编程语言中的消息读写操作。相比于XML和JSON等文本格式,Protobuf采用二进制编码,因此数据体积更小、解析速度更快。

Protobuf具有以下特点:

  1. 高效性:采用二进制编码,数据存储和传输效率高。
  2. 可扩展性:支持向已定义的消息中添加新字段,保持向前和向后兼容。
  3. 跨平台性:生成的代码可用于多种编程语言,提供了方便的接口访问。
  4. 简单性:定义数据结构的.proto文件比较简单明了,易于阅读和维护。

总的来说,Protobuf提供了一种快速、灵活和可靠的数据交换方式,被广泛应用于分布式系统、大规模数据处理和通信协议等领域。 ----GPT

安装

https://github.com/protocolbuffers/protobuf/releases/tag/v24.0-rc3

选择合适的版本

 解压后找到 ./bin/protoc.exe 将路径添加到环境变量中

 终端运行  protoc --version

 安装完成!

基础使用

1.设计数据结构(proto+python)

创建后缀名为.proto的文件

 2.转换对应语言文件(python为例)

终端执行protoc查看所有命令

 

 

执行下面代码

protoc --python_out=output_directory input.proto
//其中 output_directory 是你希望生成代码的目录,input.proto 是你的 Protocol Buffers 文件

转换完成后的.py文件不要修改,在对proto修改后再次执行--python_out会自动同步到.py中

3.python操作序列化数据

安装对应的库

pip install protobuf

 

 

 

 

这样就完成了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值