如何找到全局(ish)变量的来源?

时间:2016-09-13 16:55:42

标签: python pdb

我继承了一些庞大而笨重的python代码。在一个文件中,它使用从另一个文件导入的命令列表。使用pdb查看它,此命令变量最终在全局命名空间中。然而,还有另一个文件看起来不像它甚至被使用,其中也有一个命令变量,并且由于某些原因在某些机器上使用了变量。

我的问题是,pdb中是否有一种方法或只是代码来显示命令变量的来源?我希望得到一些具体证据,证明它出于某种原因指向该文件。

我猜测全局变量的危险性很好,我可以清理代码,但我想先完全理解它。

1 个答案:

答案 0 :(得分:0)

要获取commands对象的模块,您可以尝试:

import inspect
inspect.getmodule(commands)