2024-06-06 23:29:12 发布
网友
有没有办法进入ipython中函数的第一行。我想会是这样的:
%step foo(1, 2)
它运行ipdb,并在foo的第一行设置断点。
ipdb
foo
如果我现在想这样做,我必须转到函数的源代码并添加一个import ipdb; ipdb.set_trace()行。
import ipdb; ipdb.set_trace()
ipdb从今年早些时候的0.7开始就支持runcall、runeval和run。你可以像pdb.runcall那样使用它:
pdb.runcall
In [1]: def foo(a, b): ...: print a + b ...: In [2]: import ipdb In [3]: ipdb.runcall(foo, 1, 2) > <ipython-input-1-2e565fd9c4a4>(2)foo() 1 def foo(a, b): ----> 2 print a + b 3 ipdb>
你所要求的IPython魔法现在已经在新版本中实现了: https://stackoverflow.com/a/46333421/4374441
您只需键入%debug foo(1, 2),然后s即可进入函数。
%debug foo(1, 2)
s
ipdb从今年早些时候的0.7开始就支持runcall、runeval和run。你可以像
pdb.runcall
那样使用它:你所要求的IPython魔法现在已经在新版本中实现了: https://stackoverflow.com/a/46333421/4374441
您只需键入
%debug foo(1, 2)
,然后s
即可进入函数。相关问题 更多 >
编程相关推荐