VScode sys.path,并使CTRL+左键可访问源码

把 Path(file).resolve() 这种基于当前脚本文件的绝对路径添加到Path中,更保险。如果是相对路径,遇上 cd 切换文件夹再运行脚本的方式,相对路径就无法正常导包了。

python 复制代码
from pathlib import Path

FILE_PATH = Path(__file__).resolve()
DIR_PATH = FILE_PATH.parent

import sys
src_path = (FILE_PATH.parent.parent / "src").resolve()
sys.path.append(str(src_path))


from data_preprocess import stratified_split
from img_read import list_labeled_images

上述代码有个细节:str(src_path),这里要转成字符串。

此时,代码一般可正常运行,但无法通过 Ctrl+左键 访问函数对应的源码,并且包名下面有黄色波浪号,如上图所示。若要解决该问题,如下图所示,在 .vscode的配置文件夹的 settings.json 文件中配置 python.analysis.extraPaths

json 复制代码
{
    "python.analysis.extraPaths": [
        "${workspaceFolder}/DeepLearn/dog_cat_classification/src"
    ]
}

然后下面导入的包,就可以通过 Ctrl+左键 进行跳转了。

相关推荐
●VON5 小时前
鸿蒙 PC Markdown 编辑器内核:在 ArkWeb 中离线运行 CodeMirror 6
安全·华为·编辑器·harmonyos·鸿蒙
●VON13 小时前
鸿蒙 PC Markdown 编辑器存储安全:AtomicFile 原子提交与故障注入
安全·华为·编辑器·harmonyos·鸿蒙
●VON1 天前
鸿蒙 PC Markdown 编辑器 Alpha 评审:如何用退出条件判断阶段完成
网络·安全·华为·编辑器·harmonyos·鸿蒙
MGS浪疯1 天前
我用 WorkBuddy 做了一个能记住前文的 AI 小说编辑器
人工智能·编辑器·腾讯云·腾讯云ai代码助手·workbuddy开发者分享季·codebuddy开发者分享季
●VON1 天前
鸿蒙 PC Markdown 编辑器 Bridge 协议:原生外壳与 Web 内核的状态同步
前端·华为·编辑器·harmonyos·鸿蒙
Irene19911 天前
怎么设置 PyCharm 使用 VSCode 的快捷键,推荐保留的原生快捷键(特色功能不建议覆盖,否则丧失效率优势)Ctrl+Alt+L:代码格式化
vscode·pycharm·快捷键
●VON2 天前
鸿蒙 PC Markdown 编辑器原生右键弹层兼容
安全·华为·编辑器·harmonyos·鸿蒙
放学校门口见2 天前
vscode部署stm32开发调试环境
ide·vscode·stm32
●VON2 天前
鸿蒙 PC Markdown 编辑器系统浏览器与图片查看器独立验收
华为·编辑器·harmonyos·鸿蒙
●VON2 天前
鸿蒙 PC Markdown 编辑器通信架构:受限 ArkTS-JavaScript Bridge
华为·架构·编辑器·harmonyos·鸿蒙