sách gpt4 ăn đã đi

Làm cho `warnings.warn()` của Python không đề cập đến chính nó

In lại 作者:太空狗 更新时间:2023-10-30 00:35:56 29 4
mua khóa gpt4 giày nike

我的最小例子是

#!/usr/bin/python3

import warnings

warnings.warn('Run Forest run!', stacklevel=2)
warnings.warn('Run Forest run!')

它会输出

sys:1: UserWarning: Run Forest run!
./file.py:6: UserWarning: Run Forest run!
warnings.warn('Run Forest run!')

第一行给我的信息很少。第二行是完美的,给了我源文件和行号......但我想去掉多余的第三行。这可能吗?

câu trả lời hay nhất

事实证明,可以让 warnings.warn() 收集所有信息,并仅对信息的打印方式进行定制:

#!/usr/bin/python3

import warnings

def warning_on_one_line(message, category, filename, lineno, file=None, line=None):
return '%s:%s: %s: %s\n' % (filename, lineno, category.__name__, message)

warnings.formatwarning = warning_on_one_line

warnings.warn('Run Forest run!', stacklevel=2)
warnings.warn('Run Forest run!')

Đầu ra:

sys:1: UserWarning: Run Forest run!
./file.py:15: UserWarning: Run Forest run!

nguồn: Python module of the week

关于python - 让 Python 的 `warnings.warn()` 不提及自己,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26430861/

29 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress