从 Python 断点包设置的断点不起作用
Breakpoints set from Python Breakpoints packages didn't work
我刚刚安装了 sublime text 2、控制包和 python 断点。好吧,我正在尝试使用这些包的断点功能,但它不起作用。我正在使用 Ubuntu 14.04.2 LTS。
这只是一个测试代码
import pdb; pdb.set_trace()
p = 'Hello World'
print p
当我运行它时,将发送以下输出消息:
> /home/teste.py(5)<module>()
-> p = 'Hellow World'
(Pdb) Traceback (most recent call last):
File "/home/teste.py", line 5, in <module>
p = 'Hellow World'
File "/home/teste.py", line 5, in <module>
p = 'Hellow World'
File "/usr/lib/python2.7/bdb.py", line 49, in trace_dispatch
return self.dispatch_line(frame)
File "/usr/lib/python2.7/bdb.py", line 68, in dispatch_line
if self.quitting: raise BdbQuit
bdb.BdbQuit
我很乐意提供任何帮助。
所以有这个问题的答案:
似乎 Sublime Text 本身不支持任何类型的 REPL. The breakpoint above is working but exits with a BdbQuit
exception, raised when the pdb REPL receives EOF,这是 'quit' 的常见方式(也适用于 bash、zsh、python 口译员等)。显然 Sublime Text 正在立即发送它,因为它无法打开 REPL。
非集成解决方案
干脆不要 运行 带有 Sublime Text 的代码。通过命令行 (python my_script.py
) 或 Python 解释器(通过导入和 运行ning)激活此断点确实会按预期将您带入 pdb 解释器。
集成解决方案
有一些项目(比如 this one 我在上面的评论中提到的)可以为 Sublime 添加 REPL 支持。我个人不使用 Sublime Text,所以我不能推荐,也不知道那个好不好。
如果有任何 Sublime 专家出现,请随时改进此答案或在评论中提出替代方案。
我刚刚安装了 sublime text 2、控制包和 python 断点。好吧,我正在尝试使用这些包的断点功能,但它不起作用。我正在使用 Ubuntu 14.04.2 LTS。
这只是一个测试代码
import pdb; pdb.set_trace()
p = 'Hello World'
print p
当我运行它时,将发送以下输出消息:
> /home/teste.py(5)<module>()
-> p = 'Hellow World'
(Pdb) Traceback (most recent call last):
File "/home/teste.py", line 5, in <module>
p = 'Hellow World'
File "/home/teste.py", line 5, in <module>
p = 'Hellow World'
File "/usr/lib/python2.7/bdb.py", line 49, in trace_dispatch
return self.dispatch_line(frame)
File "/usr/lib/python2.7/bdb.py", line 68, in dispatch_line
if self.quitting: raise BdbQuit
bdb.BdbQuit
我很乐意提供任何帮助。
所以有这个问题的答案:
似乎 Sublime Text 本身不支持任何类型的 REPL. The breakpoint above is working but exits with a BdbQuit
exception, raised when the pdb REPL receives EOF,这是 'quit' 的常见方式(也适用于 bash、zsh、python 口译员等)。显然 Sublime Text 正在立即发送它,因为它无法打开 REPL。
非集成解决方案
干脆不要 运行 带有 Sublime Text 的代码。通过命令行 (python my_script.py
) 或 Python 解释器(通过导入和 运行ning)激活此断点确实会按预期将您带入 pdb 解释器。
集成解决方案
有一些项目(比如 this one 我在上面的评论中提到的)可以为 Sublime 添加 REPL 支持。我个人不使用 Sublime Text,所以我不能推荐,也不知道那个好不好。
如果有任何 Sublime 专家出现,请随时改进此答案或在评论中提出替代方案。