微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Windows上使用Python的协议缓冲区?

我一直在尝试在我的 Python程序中使用协议缓冲区,但无法使其工作.我正在运行Windows 8机器,并尝试过Python 2.7.6和Python 3.3.
我下载了Python的二进制协议缓冲编译器并用它从我的myProto.proto文件生成myProto_pb2.py,但是当我运行我的Python程序时出现以下错误

从“import myProto_pb2”行,从协议缓冲区版本2.5使用Python 2.7.6时出现以下错误

from google.protobuf import descriptor as _descriptor
  ImportError: No module named google.protobuf

如何在Windows上从Python正确安装和运行协议缓冲区?

How can I correctly install and run protocol buffers from Python on Windows?

与任何其他软件包一样,如果要安装它,则必须实际安装它.如果您只是尝试使用位于源目录中的软件包运行,它可能会起作用,但大多数软件包都不能以这种方式工作;你倾向于得到像顶层包导入的东西,然后当它尝试导入其他东西时失败几行……正如你所看到的那样.

我相信GoogleCode的主要下载包中有一个可安装的软件包.至少它适用于源包,如果不是win32包. python目录中有完整的安装说明.基本上:

C:\path\to\protobuf-2.5.0> cd python
C:\path\to\protobuf-2.5.0\python> python setup.py build
C:\path\to\protobuf-2.5.0\python> python setup.py test
C:\path\to\protobuf-2.5.0\python> python setup.py install

但是如果win32预构建的软件包没有附带,或者你不再使用它,或者你只是想安装PyPI,它也可用there.所以,假设you’ve got pip installed

pip install protobuf

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐