python - Intellij/Pycharm 无法调试 Python 模块

标签 python debugging intellij-idea pycharm python-module

我使用 PyCharm/IntelliJ 社区版本来编写和调试 Python 脚本,但现在我正在尝试调试 Python 模块,并且 PyCharm 执行了错误的命令行指令解析,导致执行错误,或者可能是我进行了错误的配置。

这是我的运行/调试配置:

IntelliJ run/debug Python module configuration

这是在我运行模块时执行的(这里没有问题):

/usr/bin/python3.4 -m histraw

但是当我调试时,这是 IntelliJ 控制台中的输出:

/usr/bin/python3.4 -m /opt/apps/pycharm/helpers/pydev/pydevd.py --multiproc --client 127.0.0.1 --port 57851 --file histraw
/usr/bin/python3.4: Error while finding spec for '/opt/apps/pycharm/helpers/pydev/pydevd.py' (<class 'ImportError'>: No module named '/opt/apps/pycharm/helpers/pydev/pydevd')

Process finished with exit code 1

如您所见,参数解析错误,在 -m 选项之后,在模块名称之前传递了一个 IntelliJ 调试脚本。

我也试过将 -m histraw 放在 Script 字段中,但不起作用,该字段仅用于放置 Python 脚本路径,而不是模块。

有什么想法吗?

最佳答案

还有另一种方法可以让它工作。您可以编写一个 python 脚本来运行您的模块。然后只需配置 PyCharm 来运行这个脚本

import sys
import os
import runpy
path = os.path.dirname(sys.modules[__name__].__file__)
path = os.path.join(path, '..')
sys.path.insert(0, path)
runpy.run_module('<your module name>', run_name="__main__",alter_sys=True)

然后调试器开始工作。

关于python - Intellij/Pycharm 无法调试 Python 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28955520/

相关文章:

python - Flask for Python - 关于系统的架构问题

debugging - 如何调试gsp页面? (没有grails,只有gsp)

debugging - 如何检测 IE8 是否在兼容性 View 中运行?

intellij-idea - IntelliJ 调试器速度慢 : Method breakpoints may dramatically slow down debugging

java - 为什么同一目录中的一个java类无法找到资源,而其他类却可以?

python - 将函数/计算应用于 pandas 中的多列

Python:如何通过对象属性过滤列表中的重复项?

c - GDB 在内核中打印错误的参数值

java - 在 Android Studio/Intellij IDEA 中自动生成 Android Log TAG

python - 如何在 Pydev Eclipse 编辑器边距中标记 pylint 警告?