假设我有一个Python函数f
和fhelp
.fhelp
旨在递归地调用自己.f
不应该递归调用.有没有办法f
确定它是否已被递归调用?
我想检查是否在Python脚本中调用了一个函数.
我目前的解决方案如下:
def _print_error(msg):
print(msg)
print("Default error message.")
_print_error.was_called = True
_print_error.was_called = False
Run Code Online (Sandbox Code Playgroud)
我可以_print_error
通过检查来检查是否被调用_print_error.was_called
.
另一种可能的方法是设置一个类并定义一个静态变量,只要该类被实例化,该变量就会被更改.__init__
可以打印消息并更改was_called
变量.
有没有更好的方法来实现相同的结果?