warn()函数位于warnings模块中,用来发出警告,或者忽略它或引发异常。
def warn(message, category=None, stacklevel=1, source=None)
第一个参数message是字符串类型,他是Warning的实例对象。
第二个参数是一个类对象,他指向message的基类。
第三个参数是堆栈深度,整型对象,sys._getframe()的参数。
最后一个就不说了,基本用不着。
拓展:
sys._getframe([num])
从调用堆栈返回一个帧对象。如果给定了可选的整数深度,则返回在堆栈顶部下方的许多调用的帧对象。
如果这比调用堆栈更深,则会引发ValueError。深度的默认值为零,返回调用堆栈顶部的帧。