在PyCharm IPython中进行调试

12

在PyCharm的IPython控制台运行代码时,是否可能触发图形化断点?

例如:

  • 您有一个名为foo.py的脚本foo()
  • 您从编辑器中将一个图形化断点放置在foo()中(即行号旁边的红色圆点)
  • 您将foo导入到PyCharm的IPython控制台中并执行foo()(注意:不是从调试配置中运行!)
3个回答

2

正如评论中@bvanlew所建议的,PyCharm(社区版和专业版)现在支持将调试器附加到交互式控制台。点击下面所示的调试按钮,当断点被触发时,PyCharm的调试器会启动。

enter image description here


1
在Ubuntu上,我需要更改/etc/sysctl.d/10-ptrace.conf文件中的kernel.yama.ptrace_scope = 1行为kernel.yama.ptrace_scope = 0,否则PyCharm将无法附加到IPython进程。

这是PyCharm提示的,我在Mint上尝试过了,但没有成功 ;( - Hennadii Madan

1
是的,但它不是自动的。
(使用4.5.2,Windows 8)
我运行一个IPython笔记本,并让PyCharm启动笔记本后端。
我点击工具,附加到进程并尝试识别笔记本进程的PID。我还没有找到一种顺畅的方法来完成这个过程。目前我使用Process Explorer,找到pycharm条目,并在笔记本服务器启动后观察新的子进程。你需要叶子python.exe进程,例如:
6268  pycharm.exe
1235    python.exe       (new when notebook launched)
7435      conhost.exe    (new)
9237      python.exe     (new - pick this PID)

我现在可以运行一个单元格并触发图形断点。

享受吧。


3
在PyCharm Professional 2016.1中,IPython控制台旁边有一个调试图标。单击此图标后,代码中的断点将被执行。 - bvanlew

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接