我正在运行python脚本。在这个脚本中,我从另一个模块导入一个函数,如:
from preprocessing import train_batch
在我运行的脚本中调用train_batch
函数。现在更详细地检查train_batch
,我在preprocessing.py
的{{1}}中找到pdb.set_trace()
并插入train_batch
,但它不起作用。
所以我想问:我可以在导入的模块中使用preprocessing.py
吗?如果可以,那么这必定意味着我发现的模块是错误的,我需要找到合适的位置。如果我不能,那么有必要检查导入的功能吗?
答案 0 :(得分:2)
您可以在Python代码*的任何位置执行import pdb; pdb.set_trace()
。如果"没有工作"我假设你的意思是你从未放入pdb。这意味着没有执行代码行。
你可以使用'在pdb中命令进入代码,即使它不是你自己的代码。只要它是Python而不是C代码,你应该没问题。我不确定C代码会发生什么。
答案 1 :(得分:0)
是。 pdb.set_trace()
只是一个函数调用;你可以把它放在你可以进行任何其他函数调用的任何地方。