如何找出我正在调用的函数

时间:2015-06-13 16:23:40

标签: python

我正在调用这样的函数:

classifier = NaiveBayesClassifier.train(training_set)

我想在train()函数中调试代码。问题是,如果我添加print语句或pdb来电,则无需更改。

我正在导入此内容:

from nltk.classify.naivebayes import NaiveBayesClassifier

但即使我改变了nltk/classify/naivebayes.py中的某些内容,也没有任何反应。我也可以删除这个文件的所有内容,我仍然有一个工作输出。所以我认为我调用的函数是在其他地方,但我找不到它。

有没有办法检查函数调用的实际位置?我很困惑。

1 个答案:

答案 0 :(得分:1)

使用pdb进入函数。 在使用火车方法之前,请先使用pdb.set_trace()

像这样的东西

import pdb; pdb.set_trace() classifier = NaiveBayesClassifier.train(training_set)

调试时。停在你叫火车方法的那一行。 按s进入功能。这将带您进入火车功能。从那里你可以正常调试。