本文介绍了进入IPython中的一个功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

有没有办法进入ipython中函数的第一行。我想象一下这样的东西:

 %step foo(1,2)

运行 ipdb 并在的第一行设置断点foo



如果我现在要这样做,我必须去函数的源代码并添加一个 import ipdb; ipdb.set_trace() line。

解决方案

ipdb已经支持runcall,runeval并运行0.7,今年早些时候。您可以像 pdb.runcall 一样使用它:

 在[1 ]:def foo(a,b):
...:打印a + b
...:

在[2]中:import ipdb

在[3]中:ipdb.runcall(foo,1,2)
> < ipython-input-1-2e565fd9c4a4>(2)foo()
1 def foo(a,b):
----> 2打印a + b
3

ipdb>


Is there a way to step into the first line of a function in ipython. I imagine something that would look like:

%step foo(1, 2)

which runs ipdb and sets a breakpoint at the first line of foo.

If I want to do this now I have to go to the function's source code and add an import ipdb; ipdb.set_trace() line.

解决方案

ipdb has had support for runcall, runeval and run since 0.7, earlier this year. You can use it just like 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中的一个功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-08 10:07