(在 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 server
eclipse,然后启动Excel,然后重新加载PyXLL
但是,尽管该hello
功能在 Excel 中有效,但在 Excel 中没有出现有关调试的菜单项。我的方法有问题吗?