【问题标题】:How can I use Pycharm to debug a Python script run by another program如何使用 Pycharm 调试由另一个程序运行的 Python 脚本
【发布时间】:2019-11-05 21:11:13
【问题描述】:

我在 coco2d-x 游戏引擎中使用 python 作为游戏逻辑的脚本语言。 我知道如何在 Pycharm 中调试 python 脚本。

当我的 python 脚本被另一个程序调用时,如何调试它们?就我而言,它是游戏引擎提供的模拟器。 如果脚本没有在 Pycharm 内部启动,Pycharm 是否还能以某种方式捕获脚本的执行过程?

我尝试使用“附加到本地进程”,但找不到。 我读过诸如“how to step through python code”、“remote debug”之类的相关主题。 但是找不到可以解决我的问题的类似主题。

【问题讨论】:

    标签: pycharm


    【解决方案1】:

    我自己找到了解决方案。我使用了问题中提到的远程调试。

    1. 将“本地主机名”设置为“localhost”并设置端口。
    2. 然后将“pycharm-debug-py3k.egg”文件解压到某个目录。
    3. 使用参数“-debug %EGG_PATH% %PYTHON_PATH% %PORT%”启动 Game.exe。

    在 python 项目中,您必须编写以下代码才能使其工作。

    sys.path.append("<path to python>")
    sys.path.append("<path to python>/Lib")
    sys.path.append("<path to python>/DLLs")
    sys.path.append("<path to pycharm-debug.egg>">
    import pydevd
    pydevd.settrace(host="localhost", port=<your port>, suspend=False, stdoutToServer=True, stderrToServer=True)
    

    这仅在调用程序支持类似“-debug”参数的情况下才有效。

    我的问题与这个问题有点重复。 debugging a uwsgi python application using pycharm

    【讨论】:

      猜你喜欢
      • 2022-09-25
      • 2012-05-01
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多