You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中Python跨文件导入函数报ModuleNotFoundError问题问询

解决VSCode Python跨文件导入ModuleNotFoundError问题

核心原因

Python运行时的模块搜索路径sys.path默认不会自动包含你的项目层级目录,哪怕所有文件夹都已创建__init__.py,也无法识别上层的模块结构。

可行解决方法

  • 方法1:临时添加目标目录到搜索路径
    在Encryption.py文件最开头加入以下代码:
import sys
import os
# 拿到Encryption.py所在的EncryptionFunc目录的上级目录,也就是SysFunctions.py所在的Functions目录
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# 后续直接导入即可
from SysFunctions import file_import
  • 方法2:配置VSCode全局生效路径
    打开VSCode设置,搜索python.analysis.extraPaths,将你的Functions文件夹或者Engine文件夹的绝对路径添加到列表中。同时在项目根目录创建.env文件,写入:
PYTHONPATH=你的Engine文件夹绝对路径

重启VSCode窗口后即可生效,后续直接用from Functions.SysFunctions import file_import就能正常导入。

  • 方法3:相对导入(仅适用于包调用场景,直接运行Encryption.py不生效)
    写法如下:
from ..SysFunctions import file_import

该方法仅当你在更上层文件调用Encryption模块时生效,直接运行Encryption.py会报相对导入错误。

验证

配置完成后运行代码,无报错即可正常调用file_import函数。

内容的提问来源于stack exchange,提问作者user15347100

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 16:57:03