python调用所有函数_python打印所有函数调用以了解脚本
这是名为player.py的代码。在# player.py
def foo():
pass
def bar():
foo()
def car():
bar()
pass
car()
像$python -m trace -T player.py一样从终端执行命令,并给出以下输出。对于相同的输出,也可以使用for trackcalls,而不是-T。该命令显示通过运行程序暴露的调用关系。在
^{pr2}$
希望这会有帮助。在
更新1:
上面的命令显示函数的关系。在
为了跟踪函数,我们可以使用traceback模块。{cd6>取决于函数的执行。但是我们必须记住,我们在哪种方法中编写traceback.print_stack(),它只会打印该函数的跟踪。我给你举个例子。在import traceback
def foo():
car()
pass
def bar():
foo()
def car():
traceback.print_stack()
pass
bar()
如果我们运行这个,我们可以看到下面的输出。在File "D:/python_practice36/player.py", line 10, in
bar()
File "D:/python_practice36/player.py", line 6, in bar
foo()
File "D:/python_practice36/player.py", line 3, in foo
car()
File "D:/python_practice36/player.py", line 8, in car
traceback.print_stack()
如果我们在foo()中调用traceback.print_stack(),那么我们可以看到追溯到foo。在import traceback
def foo():
car()
traceback.print_stack()
pass
def bar():
foo()
def car():
pass
bar()
输出是File "D:/python_practice36/player.py", line 10, in
bar()
File "D:/python_practice36/player.py", line 7, in bar
foo()
File "D:/python_practice36/player.py", line 4, in foo
traceback.print_stack()
总结
以上是生活随笔为你收集整理的python调用所有函数_python打印所有函数调用以了解脚本的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python开发一个彩票系统_[宜配屋]
- 下一篇: 生成pojo mysql_通过数据库表反