如何修复appengine ImportError:没有名为protobuf的模块?

2024-09-29 00:20:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下文件夹结构:

myappdir
  - libs
    - somelib
      script1.py
      script2.py
    - google
      - protobuf
          __init__.py
          message.py
          ...
      __init__.py
      ...
    app.yaml
    appengine_config.py
    ...

以及以下文件内容-

阿彭吉_配置.py

^{pr2}$

script1.py

from somelib.script2 import Something

script2.py

from google.protobuf import message

结果我得到:

  File "myappdir/libs/somelib/script1.py", line 34, in <module>
    from somelib.script2 import Something
  File "myappdir/libs/somelib/script2.py", line 38, in <module>
    from google.protobuf import message
ImportError: No module named protobuf

我的设置有什么问题?在


Tags: frompyimportmessageinitgooglesomethinglibs
2条回答

改变你的表线_配置.py文件,发件人:

import sys
sys.path.append('libs')

收件人:

^{pr2}$

我发现@Daniel的答案已经在我的设置中实现了,但是仍然存在问题。This github评论帮助了我。将以下内容添加到appengine_配置.py为我解决了这个问题:

from google.appengine.ext import vendor
vendor.add('lib')
import google.protobuf; print(google.protobuf.__version__)

根据您的项目目录命名,将lib更改为libs。在

相关问题 更多 >