Ale*_*ell 17 debugging pycharm python-3.x
我的项目中有以下树结构:
Cineaste/
??? cineaste/
? ??? __init__.py
? ??? metadata_errors.py
? ??? metadata.py
? ??? tests/
? ??? __init__.py
??? docs/
??? LICENSE
??? README.md
??? setup.py
Run Code Online (Sandbox Code Playgroud)
metadata.pymetadata_errors.py使用表达式导入:
from .metadata_errors.py import *
Run Code Online (Sandbox Code Playgroud)
因此,在同一目录中设置模块的相对路径(注意点前缀).
我可以metadata.py使用以下配置在PyCharm 2016编辑器中运行得很好:
但是,使用此配置我无法调试metadata.py.PyCharm返回以下错误消息(部分堆栈跟踪):
from .metadata_errors import *
SystemError: Parent module '' not loaded, cannot perform relative import
Run Code Online (Sandbox Code Playgroud)
PyCharm调试器被调用如下:
/home/myself/.pyenv/versions/cineaste/bin/python /home/myself/bin/pycharm-2016.1.3/helpers/pydev/pydevd.py --multiproc --module --qt-support --client 127.0.0.1 --port 52790 --file cineaste.metadata
Run Code Online (Sandbox Code Playgroud)
如何设置此项目以便PyCharm能够运行和调试进行相对导入的文件?
Mik*_*nov 15
今天(PyCharm 2018.3)确实很容易但并不明显。您可以通过在编辑配置窗口中按标签“脚本路径”来选择要运行的目标:脚本名称或模块名称:
小智 3
可能的解决方案之一可能是通过中间脚本运行模块,您将在调试模式下运行该脚本。例如test_runner.py:
import runpy
runpy.run_module('cineaste.metadata')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2780 次 |
| 最近记录: |