首页 > 解决方案 > Python - 将内置函数与创建的函数联系起来

问题描述

我想跟踪我的 python 程序最后一次在控制台上打印了一些东西。

我创建了这个函数:

def updateLastPrintTime():
    global lastPrintTime
    lastPrintTime = time.time()

我在每个打印语句之后调用它。

这很好用,但是,我有很多打印语句,我想lastPrintTime在每次打印后更新。

如果print不是内置函数,我会这样做:

def print():
    updateLastPrintTime()
    # rest of 'print' code ...

但是我不知道如何使用内置函数来做到这一点,特别是因为它们是用 C 编写的。任何帮助将不胜感激。

标签: pythonprinting

解决方案


您可以将内置函数分配print给另一个名称,然后您可以覆盖print

_print = print
def print(*args, **kwargs):
    _print("Hello,", *args, **kwargs)

print("world!")

或者,您也可以从builtins模块中获取内置打印,例如

import builtins
def print(*args, **kwargs):
    builtins.print("Hello,", *args, **kwargs)

print("world!")

推荐阅读