6

在 Django 中,我有一个发出折旧警告的包(django.views.generic.simple)。如果此警告描述了从何处进行导入,这将很有用,因此编码人员可以进入并更改文件,而无需逐步执行代码来查找它。

所以一般情况是

#file1.py
import file2.py

#file2.py
import warnings
warnings.warn(
'Package deprecated: imported from %s' % __importer__,
DeprecationWarning
)

其中 __importer__ 是包含“file1.py”或一些此类引用的虚构属性。

有没有办法做到这一点?

4

1 回答 1

6

是的,这是通过使用stacklevel参数来完成的warnings.warn。有关更多信息,请参阅文档中的示例。

于 2012-08-17T14:15:05.867 回答