写proto文件

package lm;

message Person

{

required int32  id = 1;

required string str = 2;

optional int32  opt = 3;

}

保存为 testp.testpb.proto

编译指令

protoc -I=/home/workspace/testprob --python_out=/home/workspace/testprob /home/workspace/testprob/testp.testpb.proto

google

https://developers.google.com/protocol-buffers/docs/pythontutorial

报错

package directory 'google/protobuf/compiler' does not exist

解决

https://groups.google.com/forum/?fromgroups=#!topic/protobuf/YeT5RW4qCxY

python ./setup.py build

sudo python ./setup.py install

报错

File "/home/workspace/testprob/testp/testpb_pb2.py", line 6, in

from google.protobuf import reflection as _reflection

File "build/bdist.linux-i686/egg/google/protobuf/reflection.py", line 68, in

File "build/bdist.linux-i686/egg/google/protobuf/internal/python_message.py"

ImportError: cannot import name enum_type_wrapper

解决

http://code.google.com/p/protobuf/issues/detail?id=438

Log message

Fix  issue 438 : add missing 'enum_type_wrapper' to setup.py

是安装包的一个改进文件,copy下来, 重新安装

根据安装目录下的demo  自己改写了个简单的, 觉得它那个还是麻烦

write.py

import testpb_pb4

import sys

p = testpb_pb2.Person()

try:

f = open(sys.argv[1], "rb")

p.ParseFromString(f.read())

f.close()

except IOError:

print sys.argv[1] + ": File not found.  Creating a new file."

p.id = 32

p.str = "test"

f = open(sys.argv[1], "wb")

f.write(p.SerializeToString())

f.close()

print "write success"

编译指令 python write.py "test"

read.py

import sys

import testpb_pb2

if len(sys.argv) != 2:

print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE"

sys.exit(-1)

p = testpb_pb2.Person()

f = open(sys.argv[1], "rb")

p.ParseFromString(f.read())

f.close()

print "p.str = ",  p.str

print "p.id=", p.id

编译指令 python read.py "test"

python google buffer_python调用Google Protocol Buffer相关推荐

  1. Google Protocol Buffer 的使用和原理

    FROM : https://www.ibm.com/developerworks/cn/linux/l-cn-gpb/ Google Protocol Buffer 的使用和原理 Protocol ...

  2. 快来看看Google出品的Protocol Buffer,别仅仅会用Json和XML了

    前言 习惯用 Json.XML 数据存储格式的你们,相信大多都没听过Protocol Buffer Protocol Buffer 事实上 是 Google出品的一种轻量 & 高效的结构化数据 ...

  3. Google Protocol Buffer 的使用和原理(c++)

    简介 什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍: Google Protocol Buffer( 简称 Protobuf) 是 Googl ...

  4. 【C++】Google Protocol Buffer(protobuf)详解(一)

    1.简介 Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准, Protocol Buffers 是一种轻便高效的结构化数据存储格式 ...

  5. c++ java通信 protocol buffer,google protocol buffer (C++,Java序列化应用实例)

    google protocol buffer (C++,Java序列化使用实例) 转载,请注明出处: http://blog.csdn.net/eclipser1987/article/details ...

  6. 只用2000行代码实现google protocol buffer c++版的功能

    2019独角兽企业重金招聘Python工程师标准>>> google protocol buffer (下面简称gpb)功能强大,应用广泛,但在实际应用中,gpb需要写.proto脚 ...

  7. Google Protocol Buffer学习笔记(一)

    概述: 新公司用的平台和相关技术都与原公司使用的不同,原来是linux+thrift而现在换成了windows+protobuf了. 参考资料: https://developers.google.c ...

  8. 前端后台以及游戏中使用Google Protocol Buffer详解

    前端后台以及游戏中使用Google Protocol Buffer详解 前端后台以及游戏中使用Google Protocol Buffer详解 0.什么是protoBuf 1.下载protobuf的编 ...

  9. windows下Google Protocol Buffer 编译安装(vs)教程

    蒲公英的博客 分享技术带来的快乐 Kuaile.IN 搜索 首页 安卓相关 WordPress 主机相关 Linux相关 网络技术 电脑技术 编程技术 免费资源 当前位置: 首页 > 编程技术 ...

最新文章

  1. 两个坐标系进行了缩放平移后的变换关系
  2. git-flow 流程 备忘清单
  3. Flex学习笔记(2)——使用ActionScript脚本
  4. 键值数据库LevelDB的优缺点及性能分析
  5. 遍历二叉树的非递归算法
  6. ASP.Net学习笔记002--ASP.Net服务端控件做了什么2
  7. 如何开始第一个开源项目?
  8. HTML网站去色代码
  9. python万年历代码带解释_Python 万年历代码简单示例
  10. android 生成bks_在Android上实现SSL通信(二)
  11. J2ME、J2SE、J2EE 小讲
  12. Java SE 007 流程控制语句 续
  13. 数据分析的思维逻辑步骤
  14. Ubuntu16.04 安装 indicator-sysmonitor
  15. FreeRTOS -- 简介
  16. 【2022年】Win11修改锁屏界面、登录界面背景图片方法(亲测有效)
  17. Anniversary party(最基础的树形dp)
  18. Nginx proxy_pass详解
  19. 东南大学银行账号信息
  20. F.巴啦啦能量 【尺取法】

热门文章

  1. 精选22个Pandas函数!
  2. 2021-10-28 SAP Spartacus SSR 性能方面的一些学习笔记
  3. Angular 原理图 Schematics 学习 - 动手开发一个实际的例子
  4. Angular 项目 tsconfig.json 里定义的 out-tsc 还有作用吗?
  5. 如何查看 ToggleStatusComponent 是否是 SAP Spartacus public API 一部分
  6. SAP Spartacus的用户登录请求
  7. SAP Fiori Elements里的SAP自定义注解annotation sap-text
  8. SAP CRM WebClient UI element id的生成逻辑
  9. Fiori UI上创建的note和web client UI上note的对应关系
  10. SAP UI5 Manifest fill logic