0. 问题描述
vscode中编写python脚本,导入工程目录下的其他模块,出现ModuleNotFoundError: No module named 错误
- 在test2的ccc.py文件中执行print(sys.path) 查看路径
返回结果发现并无’/home/xxx/first_demo’的路径,所以test2下面的文件引用不到test1下面的文件
一、解决方案
1.1 手动添加当前文件父目录到搜索路径中
import sys
import os
# 获取当前文件的父目录,即 '/home/xxx/my_project'
project_parent_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
# 将项目的最外层目录添加到搜索路径
sys.path.append(project_parent_dir)
1.2 配置settings.json(推荐)
ctrl+shift+p 搜索settings.json,添加如下配置将当前文件父目录到搜索路径中:
{"terminal.integrated.env.osx": {"PYTHONPATH": "${workspaceFolder}",},"terminal.integrated.env.linux": {"PYTHONPATH": "${workspaceFolder}",},"terminal.integrated.env.windows": {"PYTHONPATH": "${workspaceFolder}",},
}