在Python lambda函数中设置PyCharm断点

问题描述 投票:-1回答:1

我想在Python中调试传递给我的lambda函数的值,在PyCharm中。

例如,如果我有以下代码,我希望能够在函数f中设置断点,并能够看到ab的值:

f = lambda a, b: a + b
f(1, 2)

但是,如果我在第一行设置断点,它只会在定义lambda时断开,而不是在调用它时断开。

我的PyCharm版本是:

PyCharm 2018.3.3 (Professional Edition)
Build #PY-183.5153.39, built on January 10, 2019
Licensed to Michael Milton
Subscription is active until October 4, 2019
For educational use only.
JRE: 1.8.0_152-release-1343-b26 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.15.0-45-generic
python intellij-idea pycharm
1个回答
0
投票

Pycharm的断点是每行。它应该在定义lambda和调用lambda时中断。如果你只想在lambda体内部进行破坏,只需将它放在自己的线上并在该线上断开即可。

  f = lambda a, b: (
●      a + b
  )
  f(1, 2)

您还可以根据任意Python表达式创建断点。就像是

'a' in locals()

在这种情况下应该做的伎俩,即使你将lambda全部放在一行上。右键单击红色圆圈以进行断点设置。

© www.soinside.com 2019 - 2024. All rights reserved.