1

模块nosetests 在我的计算机上随处运行(它不应该只在几个指定的地方运行)。我想这是因为我不小心将模块 nosetests 添加到了 PYTHONPATH 中,方法是直接将它放在 dist-packages 或 site-packages 中,或者告诉 python 每次都永久地查找它。

我熟悉一些命令,如 find、import os、import sys 和 PYTHONPATH,但我似乎无法找到一种方法来追踪允许这种情况发生的罪魁祸首目录。

就像是

>>> find . -name "*nosetests"* -print

任何帮助都会很棒。

4

2 回答 2

2

让我们看一下这个例子:

>>> import itertools
>>> print itertools.__file__
/usr/lib/python2.7/lib-dynload/itertools.so
>>> import string
>>> print string.__file__
/usr/lib/python2.7/string.pyc
于 2012-03-11T18:53:06.920 回答
2

nosetests.__file__正如@Adam 建议的那样,要解决您的问题,检查就足够了。但是还有一种更通用的方法:inspect模块,它也适用于没有__file__属性的类和其他对象。

import inspect, nosetests
print inspect.getsourcefile(nosetests)
于 2012-03-11T20:02:07.740 回答