【问题标题】:Python: Stacktrace vs TracebackPython:堆栈跟踪与回溯
【发布时间】:2018-07-02 08:39:24
【问题描述】:

在 Python 世界中,有两个术语似乎是相等的:

  • 堆栈跟踪
  • 追溯

这两者有区别吗?

【问题讨论】:

    标签: python terminology wording


    【解决方案1】:

    Traceback 是 Python 的惯用术语(例如,traceback module),它经常与用于其他语言(如 Java)的 stacktrace 互换使用。

    【讨论】:

      【解决方案2】:

      Stacktrace 是方法调用堆栈的跟踪,与正在执行程序的计算机的内存中完全相同。 所以最近的方法调用在顶部;问题的根源也可能在顶部。 几乎所有编程语言都是这样做的。

      Traceback 是 Python “发明”的东西:它与上述相反。因此,要找到问题的根源,您需要从底部开始阅读它,因为这显然更容易被 pythonists 阅读。 为了清楚起见,他们必须指定“最近一次通话”

      将“stacktrace”称为“traceback”是完全错误的:traceback 不是堆栈的跟踪。这是一个反向的堆栈跟踪:“返回”可能是这样的。

      在堆栈的顶部,在任何意义上,您都有最近的项目。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-24
        • 2011-05-25
        • 2011-05-13
        相关资源
        最近更新 更多