我一直试图在我的Python程序中使用协议缓冲区,但无法让它正常工作。我正在运行Windows 8机器,并尝试过Python 2.7.6和Python 3.3。 我下载了Python的二进制协议缓冲编译器,并用它从我的myProto.proto
文件生成myProto_pb2.py
,但是当我收到以下错误,当我跑我的Python程序:从“进口myProto_pb2”行如何在Windows上使用Python协议缓冲区?
,我得到的
from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf
我怎样才能正确地从Windows上的Python安装和运行协议缓冲区:从协议缓冲区2.5版使用Python 2.7.6时,下面的错误?
谢谢!它似乎工作......出于某种原因,我可以从像Cygwin这样的命令提示符运行我的Python程序,但从默认的空闲编辑器启动时仍然会出现导入错误。 – user2399973
@ user2399973:我的猜测是,您实际上已经安装了两个Python安装 - 可能是一个cygwin Python和一个本地win32 Python。您已经将protobuf正确安装到了cygwin Python中,因此它可以在命令行运行cygwin Python时使用,但是您尚未将它安装到本机Python中,所以在运行本机Python的IDLE时它不起作用。但是,真的,这只是一个猜测。发布一个_new问题_,描述您的设置,显示实际的错误信息(如有),而不是仅仅描述它等。 – abarnert