解决方法如下:
warnings
模块中的warn
函数来记录警告信息。import warnings
def record_warnings(func):
def wrapper(*args, **kwargs):
with warnings.catch_warnings(record=True) as w:
result = func(*args, **kwargs)
for warning in w:
warnings.warn(str(warning.message))
return result
return wrapper
@record_warnings
def my_function():
# 单个函数的代码示例
# ...
这样,当调用my_function
函数时,它会记录所有的警告信息,并将其作为警告抛出。可以在需要的地方捕获和处理这些警告。