如何使用:python warnings.warn()?

如何使用:python warnings.warn()?,python,warnings,Python,Warnings,这是我写的代码: #usr/bin/python3 import warnings def tt(): warnings.warn("123") return 10 x = tt() print(x) 它打印: test.py:5: UserWarning: 123 warnings.warn("123") 10 我希望它只打印: test.py:5: UserWarning: 123 10 没有警告。警告(“123”) 我该怎么办?您可以替换用于格式化消息的

这是我写的代码:

#usr/bin/python3
import warnings

def tt():

    warnings.warn("123")

    return 10

x = tt()

print(x)
它打印:

test.py:5: UserWarning: 123

warnings.warn("123")

10
我希望它只打印:

test.py:5: UserWarning: 123
10
没有
警告。警告(“123”)


我该怎么办?

您可以替换用于格式化消息的功能;例如:

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

希望有帮助

import warnings
# import pdb

def format_Warning(message, category, filename, lineno, line=''):
    return str(filename) + ':' + str(lineno) + ': ' + category.__name__ + ': ' +str(message) + '\n'

warnings.formatwarning = format_Warning

def tt():

    warnings.warn("123")

    return 10

x = tt()

print(x)