问题描述
我创建了 workspace_folder
,克隆了一个 github repo
(文件夹名称),其中包含 repo_module
文件夹,而该文件夹又包含 train.py
和 algo.py
:>
workspace_folder
|
+-- repo
|
+-- train.py
|
+-- algo.py
repo 的自述文件要求运行:
python -m repo_module.train
我可以从 repo
文件夹中运行:
workspace_folder/repo$ python -m repo_module.train
但我想在 vscode 中调试 train.py
。我打开 train.py
并使用 Python: Current File
配置开始调试。但它开始给我以下错误:
Exception has occurred: ImportError
attempted relative import with no kNown parent package
对于 from . import algo
中的第 train.py
行。
答案 here 表明我们需要对代码进行一些更改。我在想是否可以对 vscode 调试 launch.json
进行任何更改并使其工作。我试图在 "cwd": "${workspaceFolder}/repo"
中设置 launch.json
但它给出了同样的错误。所以,现在我已经用所有文件中的空字符串替换了所有 from .
(点 .
之后的空格)(将所有 from . import abc
转换为 import abc
)和 from .
(.
后没有空格)到所有文件中的 from
(将所有 from .abc
转换为 from abc
)并且能够调试它。但是我能够猜测是否可以在 vscode launch.json
中修改代码和配置。有没有可能。
(另请注意,我的更改似乎有效,因为所有 py 文件都“直接”在 repo
文件夹中,而 repo
文件夹中没有子文件夹。)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)