Google 应用程序引擎、Python 和 IPython

发布于 2024-09-14 21:36:16 字数 133 浏览 9 评论 0原文

我想在GAE下使用IPython在本地调试脚本:

import ipdb; ipdb.set_trace()

但是GAE限制从sys.path加载一些模块。我可以以某种方式绕过这个吗?

I want to use IPython under GAE to debug scripts locally:

import ipdb; ipdb.set_trace()

but GAE restricts loading some modules from sys.path. Can I bypass this somehow?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

陈独秀 2024-09-21 21:36:16

当然,您可以破解 GAE SDK 的限制(您的计算机上确实有其源代码,而且它是开源代码!-),但是,如果您这样做,它不会捕获其中的情况您的代码错误地尝试导入不允许在 Google 服务器上使用的模块。所以我建议,如果您确实执行了这样的黑客攻击,请使其以某些环境变量为条件(if os.getenv('MYHACK')=='Y': ... ),因此默认情况下它是禁用的(并且 GAE SDK 表现正常),并且您只能在 shell 中使用例如

$ MYHACK=Y ipython ...

bash (或 sh;-) 显式启用它迅速的。

You can hack the GAE SDK's restrictions of course (you do have its sources on your computer, and it's open-source code!-), but, if you do, it won't catch the cases in which your code erroneously tries to import modules it won't be allowed to use on Google's servers. So I suggest, at the very least, if you do perform such a hack, make it conditional on some environment variable (if os.getenv('MYHACK')=='Y': ...), so that it's disabled by default (and the GAE SDK behaves normally) and you only enable it explicitly at your shell with e.g.

$ MYHACK=Y ipython ...

at a bash (or sh;-) prompt.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文