如何以编程方式确定一个函数是否调用另一个函数?我无法修改任何一个功能。
这是我想要的(source_calls_target
):
>>> def check():
>>> pass
>>> def test_check():
>>> check()
>>> def source_calls_target(source, target):
>>> # if source() calls target() somewhere, return True
>>> ???
>>> source_calls_target(test_check, check)
True
>>> source_calls_target(check, test_check)
False
理想情况下,我不想实际调用target()
.
理想情况下,我想检查调用是否target()
出现在source
. 根据条件语句,它可能会或可能不会真正调用它。