(在 Windows 10 中,我安装...\AppData\Local\Enthought\Canopy了包含Python 2.7的,另一个...\AppData\Local\Programs\Python\Python35包含Python 3.5.%PATH指向 Canopy)
我想通过此链接和此链接使“将 PyDev 交互式调试器附加到在 PyXLL 中运行的 Python 代码”工作。
所以我做了以下事情:
保存
eclipse_debug.py在文件夹...\AppData\Local\Enthought\Canopy\User\Lib\site-packages\pyxll\examples\中,并pyxll.cfg包含eclipse_debug.py添加
eclipse/plugins/org.python.pydev_4.5.4.201601292234/pysrc到%PATH(echo %PATH确实显示了这个路径,而echo %PYTHONPATH%仍然%PYTHONPATH%在命令提示符中返回)添加
import pydevd;pydevd.settrace()到hello之前在 Excel 中工作的函数中(hello("abc")确实返回Hello, abc)。在 Excel 中重新加载 PyXll
然而,结果,
hello功能不再起作用因此,我不
This module adds an Excel menu item to attach to the PyDev debugger, and also an Excel macro so that this script can be run outside of Excel and call PyXLL to attach to the PyDev debugger.知道如何调试。
有人可以帮忙吗?
PS:我的问题pvdevd是没有很好地插入环境,因为当我输入import代码时,pydevd不会自动建议为包numpy或numbers. 但我真的对控制PYTHONPATH或PATH在 Eclipse 内部感到困惑。
编辑1:
我已经PYTHONPATH在 Windows 的控制面板中设置为...eclipse/plugins/org.python.pydev_4.5.4.201601292234/pysrc. 结果,echo %PYTHONPATH%仍然在命令提示符中返回此路径。并且pydevd在eclipse中自动完成。
使用以下代码,不使用eclipse_debug.py并在启动后debug server,执行在以下行之后中断settrace:
from pyxll import xl_func
@xl_func("string name: string")
def hello(name):
import pydevd;pydevd.settrace()
return "Hello, %s" % name
现在,我想遵循eclipse_debug.py. 我做了以下事情:
1)在Windows的控制面板中擦除PYTHONPATH(所以,我要靠eclipse_debug.py找路径)
2) 仅将eclipse_debug.py的第一行修改为eclipse_roots = [r"C:\my_path_to\eclipse"].
3) 添加eclipse_debug.py到pyxll.cfg
4)使用以下代码定义函数hello:
from pyxll import xl_func
@xl_func("string name: string")
def hello(name):
return "Hello, %s" % name
5)启动debug servereclipse,然后启动Excel,然后重新加载PyXLL
但是,尽管该hello功能在 Excel 中有效,但在 Excel 中没有出现有关调试的菜单项。我的方法有问题吗?
