我一直試圖在我的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