在 PyCharm 中调试时如何避免进入内置函数?
How to avoid step into built-in functions when debugging in PyCharm?
例如:
df = load_dataset(os.path.join(os.path.dirname(dataset), "aclImdb"))
我不想调试 dirname
和 join
,因为它们是 Python 内置函数,但只想调试用户定义的函数,例如 load_dataset
.
在 PyCharm 中有没有办法控制它?
当您按 Step into F7 或转到 File
>
[= 时,可以阻止调试器进入库函数13=] >
Build, Execution, Deployment
>
Debugger
>
Stepping
>
Python
并检查选项 Do not step into library scripts
.
(一种替代方法也可以使用 Step into my code Alt + Shift + F7)。
如截图所示
以下是仅使用标准库的代码示例,可复制用于测试
import os
def my_function():
return 2
my_str = str(os.path.join(os.getcwd(), str(my_function())))
此屏幕截图显示使用 Step into
F7 取消选中 Do not step into library scripts
并选中 Always do smart step into
。
注意这3个设置选项是相互关联的,如果你同时选择Do not step into library scripts
和Always do smart step into
,IDE仍然会给你一个进入库函数的选择。如果您取消选中后面的选项,上面的示例将自动进入您的函数。
例如:
df = load_dataset(os.path.join(os.path.dirname(dataset), "aclImdb"))
我不想调试 dirname
和 join
,因为它们是 Python 内置函数,但只想调试用户定义的函数,例如 load_dataset
.
在 PyCharm 中有没有办法控制它?
当您按 Step into F7 或转到 File
>
[= 时,可以阻止调试器进入库函数13=] >
Build, Execution, Deployment
>
Debugger
>
Stepping
>
Python
并检查选项 Do not step into library scripts
.
(一种替代方法也可以使用 Step into my code Alt + Shift + F7)。
如截图所示
以下是仅使用标准库的代码示例,可复制用于测试
import os
def my_function():
return 2
my_str = str(os.path.join(os.getcwd(), str(my_function())))
此屏幕截图显示使用 Step into
F7 取消选中 Do not step into library scripts
并选中 Always do smart step into
。
注意这3个设置选项是相互关联的,如果你同时选择Do not step into library scripts
和Always do smart step into
,IDE仍然会给你一个进入库函数的选择。如果您取消选中后面的选项,上面的示例将自动进入您的函数。