我正在尝试在我的 Google App Engine 应用程序中包含一个PyGame库:
> import pygame
但我有一个导入错误:
> from pygame.base import *
ImportError: No module named base
我该如何导入它?
我正在尝试在我的 Google App Engine 应用程序中包含一个PyGame库:
> import pygame
但我有一个导入错误:
> from pygame.base import *
ImportError: No module named base
我该如何导入它?
你不能。GAE 有一组非常严格的库可供您使用。这是一个列表:
https://developers.google.com/appengine/docs/python/tools/libraries27
澄清一下:Joe 的链接是 Google已经安装并可供您使用的 3rd 方库的列表,但这可能不是 pygame 不适合您的原因。例如,我在我的大多数 App Engine 项目中使用 SendGrid 和 Flask,尽管它们不在该列表中,但它们工作得非常好(我只需将它们手动包含在我添加的每个项目中)
至于pygame:
依赖 ctags 或挂钩到其他 C 库的库与 GAE 的工作方式不兼容。pygame 的某些部分很可能依赖于第三方库(可能是加载可能使用 C 库进行播放的声音文件的模块)。这将阻止 pygame 正确导入。
(更新:另一篇关于用户在 Mac 上运行 pygame 时遇到问题的帖子显示 pycame 需要一个名为 pyobjc 的库,根据我上面的注释,它很可能与 GAE 的工作方式不兼容)
我自己遇到了一个沉重的与数学相关的 python 包,我只需要其中的一小部分。它依赖于一个 C 库来保持重变量类型的精度。我最终使用大量的 int() 和 float() 调用在纯 Python 中重写了一小部分,并且效果很好。