python 一个输出代码中使用了print函数的装饰器

2019-12-13  本文已影响0人  假程序员

nb_print.py

# coding=utf-8
from __future__ import print_function
import __builtin__
import traceback

__base_print = print


def nb_print(func):
    def wrapper(*args, **kwargs):
        func(*args, **kwargs)
        __base_print(traceback.format_stack()[-2])

    return wrapper


__builtin__.print = nb_print(print)

if __name__ == '__main__':
    print('http://www.baidu.com')

使用方法:
在其他模块import nb_print后,正常地使用print()函数即可。

上一篇下一篇

猜你喜欢

热点阅读