假设每次我调用内置方法os.rename(...)。我想打印它的参数。我该怎么做?这不起作用:
import os
class A(os):
def rename(**args):
print(args)
os.rename(args)
os
不是一个类,但如果你愿意,你可以修补os.rename
。您应该首先将内置函数存储在变量中(以便您可以恢复补丁),然后编写一个打印 args 的函数,然后调用 real 函数,然后将该新函数分配给os.rename
:
import os
real_rename = os.rename
def patched_rename(*args, **kwargs):
print(args, kwargs)
return real_rename(*args, **kwargs)
os.rename = patched_rename