我在脚本中使用pdb.set_trace()来设置断点。
但是我不明白为什么这个函数叫做set_trace。
在讨论执行或调试程序时,似乎经常会出现trace。在执行或调试程序时,trace意味着什么?
谢谢。
发布于 2014-09-13 10:11:55
Python调试器是在sys.settrace函数之上实现的。这是一种注册Python函数的方法,执行的每一行代码都将调用该函数。当Python解释器执行您的代码时,它将为遇到的每一行调用跟踪函数。跟踪函数可以做它喜欢做的任何事情。
调试器有一个跟踪函数,用于跟踪代码的执行情况。例如,它会检查当前堆栈帧,以查看您是否已到达断点。pdb.set_trace的意思是“用sys.settrace将pdb跟踪函数设置为跟踪函数”。
它不是一个好名字,因为它描述了函数是如何实现的,而不是它为用户做了什么。
发布于 2014-09-13 09:54:40
与许多计算机术语一样,它是对现实世界中某些东西的隐喻。下面是跟踪的相关dictionary定义
经过动物、人或车辆经过的小路、小径或道路所留下的记号或线条(
)
通过计算机程序跟踪进度类似于跟踪已经过去的东西的路径。
通常,当我们泛指跟踪时,它是一个显示程序所有活动的调试应用程序。设置断点被认为是它的一个子集。
https://stackoverflow.com/questions/25819061
复制相似问题