代码之家  ›  专栏  ›  技术社区  ›  David

PyCharm是如何工作的?他们是怎么联系到翻译的?

  •  2
  • David  · 技术社区  · 6 年前

    我知道如何使用pycharm的调试器,但这只加深了我对它如何完成与python解释器紧密耦合的任务的好奇心。

    cpython本身是否有某种无畏的钩子,或者pycharm是否以某种方式复制源代码,插入代码,然后执行它?

    1 回复  |  直到 6 年前
        1
  •  3
  •   David    6 年前

    多亏了“非我”,我可以从Gythub Src在PyDeV上进行调试。 sys.settrace 这导致了一篇关于本周python模块的文章 settrace

    一旦跟踪脚本拥有堆栈帧,检查帧的堆栈内容和/或使用 code/exec/eval 在上下文中运行“watch”语句。至于断点,这将是微不足道的,因为它只是一个匹配帧的行号和文件路径的任务。