繁体   English   中英

多行语句在哪里设置断点?

[英]Where to set breakpoint on multi-line statement?

考虑以下源代码:

1    f(
2      foo(),
3      bar(),
4      spam(a,
5           b,
6      ),
7     )

如果我希望代码在调用f之前但在调用foo()bar()spam(a, b)之后立即中断,则应在哪里设置断点? 如果我将其设置在第1行,则断点将为时过早。 但是我尝试将其设置在第7行,而pdb从来没有闯入代码。 我在哪里设置断点,为什么?

您可以将断点放在f的函数定义内,然后它将在所需的位置断开。 原因是f将在执行foo()bar()spam(a,b)之后被调用

要么

编写包装函数

def wrapper(fun,a,b):
    temp = fun(a,b)
    return temp

f(
      foo(),
      bar(),
      wrapper(spam,a,b),
     )

并在返回语句上放置喙点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM