在Chameleon的template.py文件中有一个cook(self, body)函数,我在执行这行代码时遇到了问题:
program = self._cook(body, digest, names)这将导致_cook(self, body, digest, buildins)函数和行
source = self._make(body, buildins)我使用的是PyCharm,我有两个python2.7解释器。如果我运行金字塔程序,它们都能工作。在调试模式下运行时,它们都可以连接到pydev调试器。但是,当在调试模式下处理请求时,其中一个(‘坏’解释器)将会出现以下错误。
ImportError: cannot import name pydev_debugger_exc_info我尝试进一步研究,我发现当我使用‘好’解释器时,我的模板.pt文件将被烹调成一个.py临时文件/对象(源代码),起始行为
from sys import exc_info as _exc_info这将工作得很好。而“糟糕”的解释器将以以下代码作为第一行结束。
from _pydev_imps._pydev_sys_patch import pydev_debugger_exc_info as _pydev_debugger_exc_info我也尝试过使用其他版本的pramid/chameleon等,但最终都遇到了同样的问题。我知道不同的行为是由两个不同的python2.7解释器引起的。但我真的不知道如何进一步挖掘。因此,任何帮助或建议都是非常感谢的。
发布于 2015-09-30 02:13:03
我想我已经为这个问题等待了足够长的时间。所以我决定继续写一些方法来解决这个问题。虽然这个问题以“变色龙”开头,但我认为这只是“症状”,而不是“原因”。同样,原因也在您的环境中。所以我所做的就是创建另一个env并使用另一个解释器。这里的关键是使用命令行运行setup.py (开发),而不是从pycharm运行setup.py。我发现了一些相关的问题,并尝试了一些方法。其中一个帮助了一次,但并不总是有效。以下是链接。Pydev Debugger
https://stackoverflow.com/questions/31868813
复制相似问题